Prediction method of stator rotating magnetic field position based on state observer
By using a state observer to predict the position of the rotating magnetic field of the stator in the motor control of new energy vehicles, the problems of jitter and knocking noise during acute deceleration and acute acceleration are solved, and the motor control accuracy and torque response speed are improved.
Patent Information
- Application Number
- CN202211090184.6
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2022-09-07
- Publication Date
- 2025-01-14
- Estimated Expiration
- 2042-09-07
AI Technical Summary
In the motor control of new energy vehicles, the jitter and knocking noise during acute deceleration and acute acceleration are mainly caused by the back electromotive force caused by excessive current changes, which affects the accuracy of the rotating magnetic field position of the stator and the current decoupling of the dq axis of the three-phase motor The accuracy of control results in a decrease in torque control accuracy, which is difficult to effectively solve through traditional control theory.
The stator rotation magnetic field position prediction method based on the state observer is adopted. By constructing an observer in the state space, the real-time stator rotation magnetic field position is predicted in consideration of different inputs, and the stator rotation magnetic field position error caused by the back electromotive force is eliminated.
It effectively eliminates the position error of the stator rotation magnetic field caused by the back electromotive force, improves the motor control accuracy, reduces jitter and knock vibration, and improves the accuracy and response speed of torque control.
Smart Images

Figure CN115498938B_ABST
Abstract
Description
Technical Field
[0001] The present invention belongs to the field of new energy vehicle motor control, and in particular relates to a method for predicting the position of a stator rotating magnetic field based on a state observer. Background Art
[0002] When hybrid or pure electric vehicles switch between rapid deceleration and rapid acceleration, the vehicle is prone to shaking and accompanied by tooth knocking noise due to the gap between the transmission chain gears and the motor torque reversal. Under normal circumstances, the motor torque response is at the level of tens of milliseconds, but when the motor torque is reversing (crossing zero), the faster the torque response, the more severe the shaking will be. The impact can be reduced to a certain extent by reducing the change slope when the torque is reversing (crossing zero), but the effect is limited. The fundamental cause of the impact is that the back electromotive force caused by the rapid change of current is too large, resulting in torque fluctuations, which will be reflected on the vehicle and produce knocking vibrations. The existence of back electromotive force will affect the accuracy of the position of the stator rotating magnetic field used in the permanent magnet synchronous motor control system, and at the same time affect the accuracy of the dq axis current decoupling control of the three-phase motor, resulting in a decrease in the overall torque control accuracy. When the torque changes, it cannot respond quickly to the torque demand, resulting in knocking vibrations. Eliminating the reduction in control accuracy caused by back electromotive force is a fundamental measure to solve the impact problem.
[0003] Rapid current fluctuations will generate a large back electromotive force, which will affect the position of the stator's rotating magnetic field and produce a large error. Since the back electromotive force is related to the real-time torque, speed and rotor position, it is difficult to solve this problem using traditional classical control theory. Summary of the invention
[0004] The purpose of the present invention is to provide a method for predicting the stator rotating magnetic field position based on a state observer, by establishing an observer of the stator rotating magnetic field position in the state space, and predicting the real-time stator rotating magnetic field position by considering different inputs, thereby eliminating the error of the stator rotating magnetic field position caused by back electromotive force.
[0005] The technical solution of the present invention is:
[0006] The method for predicting the position of the stator rotating magnetic field based on the state observer comprises the steps of:
[0007] S1. Construct the state vector equation:
[0008] xStNew = A*xSt + B*u + cFdBk_P*yErr
[0009] Where A is the system matrix of the observer's discretization time, xSt is the state vector of the rotor speed and position, B is the input matrix, u is the input vector of the system, cFdBk is the feedback matrix of the observer's discretization time, and yErr is the feedback quantity, that is, the error between the observer's value and the measured value of the resolver decoding chip;
[0010] S2. Determine the angle correction:
[0011] According to the system output vector, the rotor angular frequency FrqRtrEl is calculated using xSt[1]:
[0012] FrqRtrEl=xSt[1]*cGrads2HzEl_P;
[0013] cGrads2HzEl_P is the conversion factor of angular velocity;
[0014] The angle correction AlDeltaPWMBas is calculated as follows:
[0015] AlDeltaPWMMBas = FrqRtrEl * dtPWM_P * 360.0;
[0016] dtPWM_P is the carrier period of the controller.
[0017] Preferably, constructing a system input vector includes:
[0018] Taking the motor torque Trq as the input, considering the observation angle when vibration, setting the angle and angular velocity as the input, the input matrix is:
[0019] TrqLdGrad = xSt[0] Last
[0020] OmMech1 = xSt[1] Last
[0021] PhiMech1 = xSt[2] Last
[0022] OmMech2 = xSt[3] Last
[0023] PhiMech2 = xSt[4] Last
[0024] xT Last is the system vector of the previous step, and its initial value is 0;
[0025] TrqLdGrad is the state quantity of torque, without considering vibration, and the unit is [Nm.Grad / rad];
[0026] OmMech1 is the angular velocity of the motor rotor [Grad / s];
[0027] PhiMech1 is the mechanical angle of the motor rotor [Grad];
[0028] PhiMech1 is the mechanical angle of the motor rotor [Grad];
[0029] OmMech2 is the angular velocity of rotor vibration [Grad / s];
[0030] PhiMech2 is the mechanical angle [Grad] of the rotor vibration.
[0031] Preferably, the constructed system state vector includes:
[0032] Om1Dot = -cDivJ1_P[stGear]*Phi12Delta - kDivJ1_P[stGear]*Om12Delta +_1DivJ1_P*TrqGrad;
[0033] Om2Dot=cDivJ2_P[stGear]*Phi12Delta + kDivJ2_P[stGear]*Om12Delta - _1DivJ2_P*TrqLdGrad;
[0034] in,
[0035] stGear is the gear position of the vehicle gearbox;
[0036] cDivJ1_P[stGear] is the spring constant matrix related to the input gear position;
[0037] cDivJ2_P[stGear] is the spring constant matrix related to the output gear position;
[0038] kDivJ1_P[stGear] is the damping constant matrix related to the input gear position;
[0039] kDivJ2_P[stGear] is the damping constant matrix related to the output gear position;
[0040] _1DivJ1_P is the inverse of the moment of inertia of the input shaft;
[0041] _1DivJ2_P is the inverse of the output shaft moment of inertia;
[0042] The system state matrix xStPrdc is obtained:
[0043] xStPrdc[0] = TrqLdGrad;
[0044] xStPrdc[1] = Om1 + dt*Om1Dot;
[0045] xStPrdc[3] = Om2 + dt*Om2Dot;
[0046] xStPrdc[2] = Phi12Delta + dt*(xStPrdc[1] - xStPrdc[3]).
[0047] Preferably, determining the output vector and the deviation comprises:
[0048] The system output matrix xSt is as follows:
[0049] xSt[0] = xStPrdc[0] + cFdbk2_P[stGear][0]*yErr Last;
[0050] xSt[1] = xStPrdc[1] + cFdbk2_P[stGear][1]*yErr Last;
[0051] xSt[2] = xStPrdc[2] + cFdbk2_P[stGear][2]*yErr Last;
[0052] xSt[3] = xStPrdc[3] + cFdbk2_P[stGear][3]*yErr Last;
[0053] yErr Last is the system deviation of the previous step, and its initial value is 0;
[0054] The current system deviations are as follows:
[0055] yErr = OmRtrSens - xSt[1];
[0056] OmRtrSens is the rotation angle.
[0057] The advantages of the present invention are:
[0058] The present invention establishes an observer of the stator rotating magnetic field position in state space and predicts the real-time stator rotating magnetic field position by considering different inputs, thereby effectively eliminating the error of the stator rotating magnetic field position caused by back electromotive force. BRIEF DESCRIPTION OF THE DRAWINGS
[0059] The present invention will be further described below in conjunction with the accompanying drawings and embodiments:
[0060] Figure 1It is the structural diagram of the state space expression. DETAILED DESCRIPTION
[0061] The method for predicting the position of the stator rotating magnetic field based on the state observer of the present invention specifically comprises the following steps:
[0062] S1. Constructing the state vector equation
[0063] The principle of the observer is:
[0064] The general form of the state equation for a linear system is:
[0065] X=A*X(t)+b*u(t)
[0066] in:
[0067] X(t) is the state vector of the system;
[0068] u(t) is the input of the system;
[0069] A is the system matrix (coefficient matrix, state matrix);
[0070] b is the input matrix;
[0071] The relationship between the system output, state variables and input vector is called the output equation. The general form of the output equation for a linear system is:
[0072] y=C*X(t)+D*u(t)
[0073] in:
[0074] C is the output matrix;
[0075] D is the feedforward matrix.
[0076] The structure diagram of the state space expression is as follows Figure 1 As shown, for this system, a speed observer model is used. Its state vector equation is as follows:
[0077] xStNew = A*xSt + B*u + cFdBk_P*yErr
[0078] in:
[0079] A: The system matrix of the observer's discretized time
[0080] B: Input Matrix
[0081] cFdBk: The feedback matrix of the observer discretization time
[0082] xSt: state vector (rotor speed and position)
[0083] yErr: Feedback value (the error between the observer value and the measured value of the resolver decoding chip)
[0084] Therefore, the state vector, system matrix, input matrix, feedback matrix and feedback quantity are constructed in sequence.
[0085] , construct the system input vector
[0086] The electromagnetic torque of the motor is calculated by the formula: It is known that the torque of the motor is related to the d-axis current and the q-axis current, and the currents Id and Iq are related to the rotor position angle θ. Therefore, the motor torque Trq can be used as the input quantity. Considering the observation angle during vibration, the angle and angular velocity are set as the input quantity, so the input matrix is:
[0087] TrqLdGrad = xSt[0] Last
[0088] OmMech1 = xSt[1] Last
[0089] PhiMech1 = xSt[2] Last
[0090] OmMech2 = xSt[3] Last
[0091] PhiMech2 = xSt[4] Last
[0092] Among them, xStLast: the system vector of the previous step, the initial value is 0;
[0093] TrqLdGrad: torque state quantity, without considering vibration, unit is [Nm.Grad / rad];
[0094] OmMech1: angular velocity of the motor rotor [Grad / s];
[0095] PhiMech1: Mechanical angle of the motor rotor [Grad];
[0096] OmMech2: Angular velocity of rotor vibration [Grad / s];
[0097] PhiMech2: Mechanical angle of rotor vibration [Grad].
[0098] , construct the system state vector
[0099] Om1Dot = -cDivJ1_P[stGear]*Phi12Delta - kDivJ1_P[stGear]*Om12Delta +_1DivJ1_P*TrqGrad;
[0100] Om2Dot=cDivJ2_P[stGear]*Phi12Delta + kDivJ2_P[stGear]*Om12Delta - _1DivJ2_P*TrqLdGrad;
[0101] stGear: vehicle gearbox gear position;
[0102] cDivJ1_P[stGear]: Spring constant matrix related to the input gear position;
[0103] cDivJ2_P[stGear]: Spring constant matrix related to the output gear position;
[0104] kDivJ1_P[stGear]: Damping constant matrix related to the input gear position;
[0105] kDivJ2_P[stGear]: Damping constant matrix related to the output gear position;
[0106] _1DivJ1_P: the inverse of the moment of inertia of the input shaft;
[0107] _1DivJ2_P: the inverse of the moment of inertia of the output shaft;
[0108] The system state matrix xStPrdc can be obtained
[0109] xStPrdc[0] = TrqLdGrad;
[0110] xStPrdc[1] = Om1 + dt*Om1Dot;
[0111] xStPrdc[3] = Om2 + dt*Om2Dot;
[0112] xStPrdc[2] = Phi12Delta + dt*(xStPrdc[1] - xStPrdc[3]).
[0113] S1-3. Determine the output vector and deviation
[0114] The system output matrix xSt is as follows:
[0115] xSt[0] = xStPrdc[0] + cFdbk2_P[stGear][0]*yErr Last ;
[0116] xSt[1] = xStPrdc[1] + cFdbk2_P[stGear][1]*yErr Last ;
[0117] xSt[2] = xStPrdc[2] + cFdbk2_P[stGear][2]*yErr Last ;
[0118] xSt[3] = xStPrdc[3] + cFdbk2_P[stGear][3]*yErr Last ;
[0119] yErr Last is the system deviation of the previous step, and the initial value is 0;
[0120] The current system deviations are as follows:
[0121] yErr = OmRtrSens - xSt[1];
[0122] OmRtrSens: rotation angle.
[0123] , determine the angle correction
[0124] According to the system output vector, the rotor angular frequency FrqRtrEl is calculated using xSt[1]:
[0125] FrqRtrEl=xSt[1]*cGrads2HzEl_P;
[0126] cGrads2HzEl_P: Conversion factor of angular velocity
[0127] The angle correction AlDeltaPWMBas is calculated as follows:
[0128] AlDeltaPWMMBas = FrqRtrEl * dtPWM_P * 360.0;
[0129] dtPWM_P: The carrier period of the controller.
[0130] The above embodiments are only for illustrating the technical concept and features of the present invention, and their purpose is to enable people familiar with the technology to understand the content of the present invention and implement it accordingly, and they cannot be used to limit the protection scope of the present invention. Any modifications made according to the spirit of the main technical solution of the present invention should be included in the protection scope of the present invention.
Claims
1. A method for predicting the position of a stator rotating magnetic field based on a state observer, characterized in that: Includes steps: S1. Construct the state vector equation: xStNew = A*xSt + B*u + cFdBk_P*yErr Where A is the system matrix of the observer's discretization time, xSt is the state vector of the rotor speed and position, B is the input matrix, u is the input vector of the system, cFdBk is the feedback matrix of the observer's discretization time, and yErr is the feedback quantity, that is, the error between the observer's value and the measured value of the resolver decoding chip; The build system input vector includes: Taking the motor torque Trq as the input, considering the observation angle when vibration, setting the angle and angular velocity as the input, the input matrix is: TrqLdGrad = xSt[0] Last OmMech1 = xSt[1] Last PhiMech1 = xSt[2] Last OmMech2 = xSt[3] Last PhiMech2 = xSt[4] Last xT Last is the system vector of the previous step, and its initial value is 0; TrqLdGrad is the state quantity of torque, without considering vibration, and the unit is [Nm.Grad / rad]; OmMech1 is the angular velocity of the motor rotor [Grad / s]; PhiMech1 is the mechanical angle of the motor rotor [Grad]; PhiMech1 is the mechanical angle of the motor rotor [Grad]; OmMech2 is the angular velocity of rotor vibration [Grad / s]; PhiMech2 is the mechanical angle of rotor vibration [Grad]; The constructed system state vector includes: Om1Dot = -cDivJ1_P[stGear]*Phi12Delta - kDivJ1_P[stGear]*Om12Delta + _1DivJ1_P*TrqGrad; Om2Dot = cDivJ2_P[stGear]*Phi12Delta + kDivJ2_P[stGear]*Om12Delta - _1DivJ2_P*TrqLdGrad; in, stGear is the gear position of the vehicle gearbox; cDivJ1_P[stGear] is the spring constant matrix related to the input gear position; cDivJ2_P[stGear] is the spring constant matrix related to the output gear position; kDivJ1_P[stGear] is the damping constant matrix related to the input gear position; kDivJ2_P[stGear] is the damping constant matrix related to the output gear position; _1DivJ1_P is the inverse of the moment of inertia of the input shaft; _1DivJ2_P is the inverse of the output shaft moment of inertia; The system state matrix xStPrdc is obtained: xStPrdc[0] = TrqLdGrad; xStPrdc[1] = Om1 + dt*Om1Dot; xStPrdc[3] = Om2 + dt*Om2Dot; xStPrdc[2] = Phi12Delta + dt*(xStPrdc[1] - xStPrdc[3]); Determining the output vector and the deviation includes: The system output matrix xSt is as follows: xSt[0] = xStPrdc[0] + cFdbk2_P[stGear][0]*yErr Last; xSt[1] = xStPrdc[1] + cFdbk2_P[stGear][1]*yErr Last; xSt[2] = xStPrdc[2] + cFdbk2_P[stGear][2]*yErr Last; xSt[3] = xStPrdc[3] + cFdbk2_P[stGear][3]*yErr Last; yErr Last is the system deviation of the previous step, and its initial value is 0; The current system deviations are as follows: yErr = OmRtrSens - xSt[1]; OmRtrSens is the rotation angle; S2. Determine the angle correction: According to the system output vector, the rotor angular frequency FrqRtrEl is calculated using xSt[1]: FrqRtrEl=xSt[1]*cGrads2HzEl_P; cGrads2HzEl_P is the conversion factor of angular velocity; The angle correction AlDeltaPWMBas is calculated as follows: AlDeltaPWMMBas = FrqRtrEl * dtPWM_P * 360.0; dtPWM_P is the carrier period of the controller.
Citation Information
Patent Citations
Permanent magnet synchronous motor self-adaptive identification control method and control system thereof
CN105375848A
Permanent magnet synchronous motor control method based on sliding mode observer
CN112701977A