TUNING A SLIDING MODE OBSERVER FOR A PERMANENT MAGNET SYNCHRONOUS MOTOR
20250183828 ยท 2025-06-05
Assignee
Inventors
Cpc classification
International classification
H02P21/13
ELECTRICITY
Abstract
A method is provided that may include receiving an identifier of a permanent magnet synchronous motor (PMSM), and mapping the identifier to electrical parameters of the PMSM. The method may include determining one or more coefficients of a sliding mode observer (SMO) based on the electrical parameters. The method may include providing the determined coefficients to the SMO to estimate the rotor position and speed of the PMSM.
Claims
1. An apparatus comprising: at least one memory configured to store instructions; and at least one processing circuitry configured to access the at least one memory, and execute the instructions to cause the apparatus to at least: receive an identifier of a permanent magnet synchronous motor (PMSM); map the identifier to electrical parameters of the PMSM; determine one or more coefficients of a sliding mode observer (SMO) based on the electrical parameters; and provide the determined one or more coefficients to the SMO to estimate at least one of position and speed of a rotor of the PMSM.
2. The apparatus of claim 1, wherein the identifier of the PMSM is a model number or a part number.
3. The apparatus of claim 1, wherein an electrical parameter map is configured to receive the identifier of the PMSM and map the identifier to electrical parameters of the PMSM, and the electrical parameters of the PMSM are provided to a coefficient calculator configured to determine the one or more coefficients of the SMO.
4. The apparatus of claim 3, wherein the electrical parameter map and the coefficient calculator are provided by a separate apparatus and loaded onto a controller.
5. The apparatus of claim 1, wherein the electrical parameters of the PMSM include resistance, inductance, and a back electromotive force (BEMF) constant.
6. The apparatus of claim 1, wherein the one or more coefficients of the SMO include a sliding gain and a boundary layer width.
7. The apparatus of claim 6, wherein the sliding gain is chosen through a Lyapunov approach, and the boundary layer width is subsequently chosen through a Harmonic Balance (HB) method.
8. The apparatus of claim 6, wherein the sliding gain is chosen based on the BEMF constant and a locking RPM, and the boundary layer width is calculated using amplitude, the electrical parameters of the PMSM for inductance and resistance, and equivalent delay time.
9. The apparatus of claim 8, wherein the sliding gain is chosen approximately two to three times of the BEMF constant at the locking RPM, and the equivalent time delay is approximately two times a sampling time.
10. The apparatus of claim 6, wherein a linear gain is calculated using a ratio between the sliding gain and the boundary layer width, and corresponds to a slope in a saturation function described by the sliding gain and the boundary layer width.
11. A method comprising: receiving an identifier of a permanent magnet synchronous motor (PMSM); mapping the identifier to electrical parameters of the PMSM; determining one or more coefficients of a sliding mode observer (SMO) based on the electrical parameters; and providing the determined one or more coefficients to the SMO to estimate at least one of position and speed of a rotor of the PMSM.
12. The method of claim 11, wherein the identifier of the PMSM is a model number or a part number.
13. The method of claim 11, wherein an electrical map parameter is configured to receive the identifier of the PMSM and map the identifier to electrical parameters of the PMSM, and the electrical parameters of the PMSM are provided to a coefficient calculator configured to determine the one or more coefficients of the SMO.
14. The method of claim 13, wherein the electrical parameter map and the coefficient calculator are provided by a separate apparatus and loaded onto a controller.
15. The method of claim 11, wherein the electrical parameters of the PMSM include resistance, inductance, and a back electromotive force (BEMF) constant.
16. The method of claim 11, wherein the one or more coefficients of the SMO include a sliding gain and a boundary layer width.
17. The method of claim 16, wherein the sliding gain is chosen through a Lyapunov approach, and the boundary layer width is subsequently chosen through a Harmonic Balance (HB) method.
18. The method of claim 16, wherein the sliding gain is chosen based on the BEMF constant and a locking RPM, and the boundary layer width is calculated using amplitude, the electrical parameters of the PMSM for inductance and resistance, and equivalent time delay.
19. The method of claim 18, wherein the sliding gain is chosen approximately two to three times of the BEMF constant at the locking RPM, and the equivalent time delay is approximately two times a sampling time.
20. The method of claim 16, wherein a linear gain is calculated using a ratio between the sliding gain and the boundary layer width, and corresponds to a slope in a saturation function described by the sliding gain and the boundary layer width.
Description
BRIEF DESCRIPTION OF THE FIGURE(S)
[0010] Having thus described examples of the disclosure in general terms, reference will now be made to the accompanying figures, which are not necessarily drawn to scale, and wherein:
[0011]
[0012]
[0013]
[0014]
[0015]
[0016]
[0017]
[0018]
[0019]
DETAILED DESCRIPTION
[0020] Some examples of the present disclosure will now be described more fully hereinafter with reference to the accompanying figures, in which some, but not all examples of the disclosure are shown. Indeed, various examples of the disclosure may be embodied in many different forms and may not be construed as limited to the examples set forth herein; rather, these examples are provided so that this disclosure will be thorough and complete, and will fully convey the scope of the disclosure to those skilled in the art. Like reference numerals refer to like elements throughout.
[0021] Unless specified otherwise or clear from context, references to first, second, third, and so forth may not be construed to imply a particular order. A feature described as being above another feature (unless specified otherwise or clear from context) may instead be below, and vice versa; and similarly, features described as being to the left of another feature else may instead be to the right, and vice versa. Also, while reference may be made herein to quantitative measures, values, or geometric relationships, without limitation, unless otherwise stated, any one or more if not all of these may be approximate to account for acceptable variations that may occur, such as those due to engineering tolerances.
[0022] As used herein, unless specified otherwise or clear from context, the or of a set of operands is the inclusive or and thereby true if and only if one or more of the operands is true, as opposed to the exclusive or which is false when all of the operands are true. Thus, for example, [A] or [B] is true if [A] is true, or if [B] is true, or if both [A] and [B] are true. Further, the articles a and an mean one or more, unless specified otherwise or clear from context to be directed to a singular form. Furthermore, it may be understood that unless otherwise specified, the terms data, content, digital content, information, and similar terms may be at times used interchangeably.
[0023] Examples of the present disclosure relate to three-phase permanent magnet synchronous motors (PMSMs) driven under field-oriented control (FOC). FOC (also referred to as vector control) of motors is a control method in which the stator currents of a three-phase AC electric motor are characterized by the magnetic flux of the motor and its torque. FOC is a method by which one of the fluxes (rotor, stator, or air gap) is treated as a basis for creating a reference frame for one of the other fluxes with the purpose of decoupling the torque and flux-producing components of the stator current. Such decoupling may enable ease of control for complex three-phase motors in the same manner as DC motors with separate excitation. Armature current may be used for torque generation, and excitation current may be used for flux generation. In certain applications, the rotor flux may be considered as a reference frame for the stator and air gap flux.
[0024]
[0025] As shown in
[0026] The sensorless FOC architecture 100 may include a FOC routine 106, which may indirectly determine and control time invariant values of torque and flux, through a series of coordinate transforms, with proportional and integral (PI) control loops. The process may include measuring the three-phase stator currents i.sub.a, i.sub.b, i.sub.c. Two of the three-phase stator currents may be measured to provide values for i.sub.a and i.sub.b, and the value for i.sub.c can be calculated using the equation i.sub.a+i.sub.b+i.sub.c=0. A first coordinate transform 108 may convert the three-phase currents i.sub.a, i.sub.b, i.sub.c from a three-axis coordinate system to a two-axis (- axis) coordinate system. One example of a suitable first coordinate transform is the Clarke Transform. This conversion may provide current values i.sub. and i.sub. using the measured i.sub.a and i.sub.b values, and the calculated value i.sub.c. The current values i.sub. and i.sub. may be time-varying quadrature current values as viewed from the perspective of the stator.
[0027] With the stator currents i.sub. and i.sub. represented on a two-axis orthogonal system with the - axis, the next operation is to transform into another two-axis system that is rotating with the rotor flux. A second coordinate transform 110 may rotate the two-axis coordinate system to align with the rotor flux using a rotor flux angle calculated at a last iteration of the control loop. This two-axis rotating coordinate system may be called the d-q axis. In the case of a PMSM, the rotor flux angle may be the same as the rotor angular position. Here, {circumflex over ()} represents the rotor angular position (at times more simply referred to as the rotor angle or the rotor position). One example of a suitable second coordinate transform is the Park Transform. This conversion may provide current values i.sub.d and i.sub.q from current values i.sub. and i.sub.. The current values i.sub.d and i.sub.q may be the quadrature currents transformed to the rotating coordinate system. For steady state conditions, i.sub.d and i.sub.q may be constant.
[0028] The FOC architecture 100 may include interdependent PI control loops for controlling three interactive variables: the rotor speed, rotor flux, and rotor torque. Specifically, one PI loop may be for controlling motor speed, and two other PI control loops may be for controlling the transformed current values i.sub.d and i.sub.q, which may be involved in controlling respective ones of rotor flux and rotor torque.
[0029] More specifically, a speed error signal may be formed at a summing point 112 using rotor speed {circumflex over ()} and a speed setpoint value .sub.ref, and the speed error signal may be input to a PI controller. The speed error signal may be input to a first PI controller 114, and the first PI controller 114 may output a reference value i.sub.q ref for i.sub.q. The i.sub.q reference i.sub.q ref may be involved in the control of the torque output of the PMSM 102. A reference value i.sub.d ref for i.sub.d may be involved in the control of resultant flux.
[0030] Similar to the speed error signal, error signals for i.sub.d and i.sub.q may be formed at summing points 116 and 118 using i.sub.d and i.sub.q, along with their respective reference values i.sub.d ref and i.sub.q ref. The error signals may be input to second and third PI controllers 120 and 122. The second and third PI controllers may output voltage values V.sub.d and V.sub.q, which are voltage vectors to be sent to the PMSM 102.
[0031] The voltage values V.sub.d and V.sub.q are two voltage component vectors in the rotating d-q axis. Complementary inverse coordinate transforms may be used to return to the three-phase motor voltage. An inverse coordinate transform 124, such as an Inverse Park Transform, may convert voltage values V.sub.d and V.sub.q from the two-axis rotating d-q frame to the two-axis stationary frame -, and provide the next quadrature voltage values V.sub. and V.sub.. The rotor flux angle or rotor angular position {circumflex over ()} may also be used here. A space vector modulation (SVM) routine 126 may then be used to convert voltage values V.sub. and V.sub. from the stationary two-axis - frame to the stationary three-axis, three-phase reference frame of the stator, and provide voltage values V.sub.a, V.sub.b and V.sub.c. In some examples, the Inverse Clarke Transform may be folded into the SVM routine to simplify the process. The three-phase voltage values V.sub.a, V.sub.b and V.sub.c may be used to calculate new pulse width modulation (PWM) duty cycle values that generate a desired voltage vector.
[0032] The sensorless FOC architecture 100 for driving the PMSM 102 generally does not include corresponding sensors (such as Hall sensors, ABZ encoders, without limitation) for measuring the rotor position {circumflex over ()} and speed {circumflex over ()} (and torque). The three-phase stator currents i.sub.a, i.sub.b, i.sub.c may instead be measured using any suitable current sensor. Because rotor position and speed are used in the FOC architecture, in sensorless control modes, a speed observer may be used to estimate the rotor position and speed. One example of a speed observer is a sliding-mode observer (SMO) 128, which is an adaptive algorithm based on control theory and electrical motor mathematical modeling. In some examples, the SMO may receive the quadrature current i.sub., i.sub. and voltage values V.sub., V.sub. as inputs, and provide estimated rotor position {circumflex over ()} and speed {circumflex over ()} as outputs, which during subsequent control loops may converge to actual motor position and speed.
[0033]
[0034] Referring to
[0035] As shown in
[0036] To further describe the SMO 128, the dynamic model of the PMSM 102 in the - domain can be expressed as follows:
[0037] Based on the above dynamic model an observer model can be defined as:
where .sub.s, .sub.s, .sub.s and .sub.s are the estimated quantities, and z.sub., z.sub. are defined as follows:
where .sub.s=(.sub.si.sub.s), .sub.s=(.sub.si.sub.s) are the estimation errors and sign(.sub.s)=0, sign(.sub.s)=0 are the switching surfaces.
[0038] The error dynamics can be expressed as follows:
[0039] The above expressions reduce to:
where {tilde over (e)}.sub.s, {tilde over (e)}.sub.s are the back electromotive force (BEMF) estimation errors.
[0040] To derive a sliding gain (k) formulation through the Lyapunov approach, a positive definite Lyapunov function V>0 may be chosen, subjected to dynamics defined by equation (5):
According to the Lyapunov criteria for stability, the time derivative of V, i.e., {dot over (V)}(.sub.a|.sub.s|.sub.|.sub.s|), where .sub., .sub.>0. The time derivative of equation (6) can be expressed as follows:
Replacing equation (5) into equation (7), equation (7) can be further expressed as
Equation (8) can be further reduced to:
[0041] Now to satisfy the stability condition, the following expressions may be individually less than zero, i.e.,
are already negative). Therefore, if k.sub.>|{tilde over (e)}.sub.s| and k.sub.>|{tilde over (e)}.sub.s|, then the stability condition will be satisfied. These inequalities can be further represented as the sliding gains:
Putting equation (10) into equation (9), equation (9) can be further expressed as:
[0042] Notably, the terms
can either be positive or negative, depending on the sign of the estimation errors of current and BEMF. If these terms are positive, then they may cancel the terms
and what left is
If the terms
are negative, then it may negatively add up to the rest of the terms, which may produce a more negative value. Hence, for both conditions, {dot over (V)} remains less than (.sub.|.sub.s|.sub.|.sub.s|).
[0043] It may therefore be said that the system may be stable for the above sliding gains (k.sub., k.sub.). However, {tilde over (e)}.sub.s and {tilde over (e)}.sub.s are unknown, so a sufficiently large positive value for both the sliding gains (k.sub., k.sub.>max (|e.sub.s|, |e.sub.s|)) may be chosen so that equations (10a) and (10b) can be satisfied. The value can be estimated from the operating voltage and lock in RPM. Further, the voltage constant (also referred to as the BEMF constant) may be known, and from the voltage constant of the motor, the value of k.sub., k.sub. may be chosen. As described herein, either sliding gain k.sub. or k.sub. may be referred to as sliding gain k.sub.slide.
[0044] The above formulation considers the example of switching functions in the form of sign(.sub.s) and sign(.sub.s). This type of example, however, may experience chattering. To reduce the chattering effect of the sliding mode, a saturation function may instead be implemented. The difference between these two functions is shown in
[0045] The gain selection of the SMO 128 may be difficult to perform, especially when switching nonlinearity is replaced with saturation nonlinearity, as the saturation function has a linear zone (within boundary layer); and outside boundary layer, the saturation function behaves like a signum function, as shown in
[0046] As shown in
decides now aggressive is the actuation, the steeper the slope, the aggressiveness is more. The steepness can be increased or decreased by changing the values of either k, or both. If k is chosen large, then may be also larger in order to restrict the linear gain. If is chosen very small, then the boundary layer on the horizontal axis is very small and the example is closer to the sign function and chattering may be increased. If is taken too large, chattering can be reduced, however, the accuracy of estimation may be compromised.
[0047] After choosing k through Lyapunov approach, may be chosen. For this, a describing function-based approach may be considered. This method is also referred to as Harmonic Balance (HB) method. It is a mathematical approach that may be used to analyze specific set of nonlinear close loop system. It may be characterized as a union of a static nonlinearity with a linear system. The describing function method may be a fairly accurate technique to describe the amplitude and frequency of oscillations in the system's output via the first-harmonic component, under the assumption of a periodic steady-state response in systems with a linear component exhibiting low-pass filter like characteristics.
[0048] Any control system that can be converted into the system structure depicted in
[0049] The third assumption of the describing function method. It represents a ballpark estimation, since the output of a nonlinear element in response to a sinusoidal input typically includes higher-order harmonics in addition to the fundamental frequency. In contrast to the fundamental component, this assumption suggests that all the higher-order harmonics can be ignored in the analysis. The linear component that follows the nonlinearity must possess low-pass characteristics for this assumption to be true, i.e., |G(j)|>>|G(jn)| for n=2, 3, . . . .
[0050] As seen in
[0051] To illustrate the describing function for the saturation nonlinearity,
Considering the odd nature of the nonlinearity, only b.sub.1 needs to be considered and only the fundamental component is taken into account considering the third assumption. Hence the expression for b.sub.1 can be written as:
Replacing w(t) in equation (14) yields:
Equation (15) may be simplified to:
The describing function for the saturation nonlinearity may therefore be written as:
Further, it can be noted that:
[0052] Assume that the control system is experiencing a self-sustaining oscillation with amplitude A and frequency . The following relations are satisfied by the variables in the loop (see
One may therefore have y=G(j)N.sub.df(A, )(y). Because y0, this implies:
Equation (21) can be further rewritten as:
Equation (22) is satisfied by the frequency and amplitude A of the limit cycles in the control system. The nonlinear system doesn't have limit cycles if the equation (22) contains no solutions. It represents two nonlinear equations containing variables A and (one is given by the real and the other one is given by the imaginary parts), and there are often only a limited number of solutions available.
[0053] Treat the observer as a dynamical system with two inputs and a single output. It helps to find out the transfer function (TF) for the internal model of the observer. The observer output .sub.s must follow (track) one of the two inputs i.sub.s. It is possible to treat the other input (v.sub.se.sub.s) as a feedforward. The observer may therefore be considered a feedback-feedforward system that employs the sliding-mode algorithm in the controller.
[0054] As shown in
The total TF with the delay is
However, instead of (v.sub.se.sub.s), one may have (v.sub.s.sub.s), where .sub.s is an estimated value. This delay e.sup.Ts, may be called the equivalent delay, which may be determined via matching the frequency of chattering in the original discrete-time system and the equivalent continuous-time system with the delay. An equivalent delay of two sampling period is considered for the present analysis.
[0055] Given the TF of the observer,
Pade's first order approximation may be applied to produce:
Equation (23) may therefore be rewritten as:
Segregating the complex and real terms in turn produces:
The describing function of the saturation nonlinearity is known and given by equation (17). Furthermore, the amplitude of the oscillation A reduces as the parameter grows, as seen by the fact that N.sub.df(A, ) is monotonically decreasing regarding both the arguments. Then using =A, the minimum magnitude A in the domain of can be found, and in that case the describing function can be expressed as equation (19), i.e.,
[0056] As can be seen from equations (17), (18) and (19), the saturation nonlinearity has no complex term so from equation (25), the expression for the can be rewritten:
In the limiting case given by equation (19), then, the value of amplitude A is minimum and may be expressed as:
Putting the value of the angular frequency from equation (26) in equation (27), the amplitude can be further expressed as:
[0057] According to some examples of the present disclosure, then, from the BEMF constant and locking RPM, a sliding gain k may be chosen for the PMSM 102. In some examples, the sliding gain k may be chosen two to three times of the BEMF constant at the locking RPM. The boundary layer width may be calculated using equation (28), and the motor electrical parameters for inductance L and resistance R, as well as equivalent delay time T which is two times the sampling time T.sub.S. The slope (linear gain)
may inen be calculated.
[0058] To further illustrate some examples, consider a long Hurst motor. Assume the voltage constant for the long Hurst motor is given as 7.34 V line-to-line peak/kRPM; and that the phase-to-neutral is therefore 4.23 V/KRPM. If the locking RPM is 500, then at that RPM, the voltage constant will be 2.115 V. In this example, the sliding gain k may be chosen 2-to-3 times the voltage constant, such as k=4.5, as the error on BEMF estimation will be no greater than this value at that RPM.
[0059] Taking the long hurst motor electrical parameters for inductance L and resistance R, the sampling time T.sub.S, and the sliding gain k, the amplitude boundary layer width can be calculated according to equation (28) as:
where T=2T.sub.s=0.0001, L=2.8710.sup.4 H, R=0.285, k=4.5. The linear gain may then be calculated as
[0060] Next, consider a short Hurst motor. Assume the voltage constant for the short hurst motor is given as 7.24 V line-to-line peak/kRPM; and that the phase-to-neutral is therefore 4.18 V/KRPM. If the locking RPM is 500, then at that RPM, the voltage constant will be 2.09 V. In this example, the sliding gain k may be chosen 2-to-3 times the voltage constant, such as k=4.18, as the error on BEMF estimation will be no greater than this value at that RPM. The amplitude boundary layer width can be calculated from equation (28) using the short hurst motor electrical parameters, the sampling time, and the sliding gain k:
where T=2T.sub.s=0.0001, L=0.002423 H, R=2.8, k=4.18. The linear gain may then be calculated as
[0061] Now consider a linix motor. Assume the voltage constant for the linix motor is given as 2.97 V line-to-line peak/kRPM; and that the phase-to-neutral is therefore 1.715 V/KRPM. If the locking RPM is 1000, then at that RPM, the voltage constant will be 1.715 V. In this example, the sliding gain k may be chosen 2-to-3 times the voltage constant, such as k=3.432. The amplitude boundary layer width can be calculated by equation (28) using the linix motor electrical parameters, the sampling time, and the sliding gain k:
where T=2T.sub.s=0.0001, L=0.0003905 H, R=0.569240, k=3.432. The linear gain may then be calculated as
Notably, since une unix motor has greater saliency, the dynamic model of the observer used for linix may be different from the dynamic model used for the long and short Hurst.
[0062] Many modifications and other examples of the disclosure set forth herein will come to mind to one skilled in the art to which the disclosure pertains having the benefit of the teachings presented in the foregoing description and the associated figures. Therefore, it is to be understood that the disclosure is not to be limited to the specific examples disclosed and that modifications and other examples are intended to be included within the scope of the appended claims. Moreover, although the foregoing description and the associated figures describe examples in the context of certain example combinations of elements or functions, it may be appreciated that different combinations of elements or functions may be provided by alternative examples without departing from the scope of the appended claims. In this regard, for example, different combinations of elements or functions than those explicitly described above are also contemplated as may be set forth in some of the appended claims. Although specific terms are employed herein, they are used in a generic and descriptive sense and not for purposes of limitation.