K-best SDA-based multi-step current prediction control method applied to PMSM
By adopting the multi-step current prediction control method of K-BEST SDA in PMSM control, the advantages of parallel computing system are used to solve the problem of high-step prediction control and calculation complexity, which improves calculation efficiency and applicability.
Patent Information
- Application Number
- CN202411189575.2
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2024-08-28
- Publication Date
- 2025-01-24
AI Technical Summary
Multi-step prediction control has high computational complexity in the field of motor control, resulting in increased computational burden and it is difficult to complete the algorithm calculation within one control cycle.
Adopting the multi-step current prediction control method based on the K-Best SDA, in the parallel computing control system, several nodes of each layer are performed at the same time. Through the K-BEST SDA quarry algorithm The number of candidates per level is simplified to simplify algorithm complexity.
It improves the calculation efficiency of the control system, simplifies the process of finding excellence, and makes multi -step prediction control more suitable for PMSM control of parallel processing systems.
Smart Images

Figure CN119357528A_ABST
Abstract
Description
Technical field:
[0001] The invention belongs to the field of high-performance control of surface-mounted PMSM, and in particular relates to a multi-step current prediction control method based on K-bestSDA applied to PMSM. Background technology:
[0002] Finite Control Set Model Predictive Control (FCS-MPC) has gained wide application and research interest in the field of motor control due to its excellent fast response capability and easy integration of nonlinear constraints. The essence of model predictive control is a model-based control strategy that makes current control decisions by predicting and optimizing future behaviors. This process involves the length of future time. Model prediction can be divided into single-step MPC and multi-step MPC according to the number of prediction time steps. Single-step MPC only considers the system behavior from the current moment to the next time step. It predicts the output of the system in the next time step based on the current state in each control cycle, and then calculates the control input based on this prediction. Multi-step MPC considers the system behavior in multiple time steps in the future starting from the current moment. From the perspective of computational complexity, the computational complexity of single-step MPC is relatively low, while the computational complexity of multi-step MPC will increase exponentially with the increase of prediction step length, which puts higher requirements on the computing power of the controller and the optimization of the algorithm.
[0003] Although multi-step prediction has a significant improvement in motor control performance compared to single-step prediction, its computational complexity increases exponentially with the increase in prediction step length, making it difficult for most controllers to complete the algorithm calculation within one control cycle. For this reason, a large number of studies have focused on optimizing multi-step prediction algorithms to reduce multi-step predictions. Therefore, research on how to reduce the computational burden and the simplicity of optimization remains an urgent problem to be solved. Summary of the invention:
[0004] In order to solve the problems existing in the prior art, the purpose of the present invention is to provide a multi-step current prediction control method based on K-best SDA applied to PMSM. In this method, in a parallel computing control system, the calculations of several nodes in each layer are carried out simultaneously, and the efficiency will be greatly improved.
[0005] As conceived above, the technical solution of the present invention is:
[0006] A multi-step current prediction control method based on K-best SDA applied to PMSM is characterized in that: first, the back electromotive force is calculated according to the data collected by the motor parameters, encoder and current sensor, and the current in the three-phase coordinate system is transformed to obtain the current in the stationary coordinate system, thereby constructing a multi-step prediction current expression and a value function, and the value function minimum problem is converted into a least squares problem; then, according to all the nodes obtained by the prediction, the K-bestSDA optimization algorithm is used to calculate all layers layer by layer, and each layer extends the two cases of 0 and 1 based on the nodes of the previous layer. By limiting the number of candidate solutions at each level, the algorithm complexity is fixed until the last layer, and the node with the smallest output node value is taken as the optimal solution.
[0007] Preferably, the specific process of the method is as follows:
[0008] (1) According to the motor parameters, three-phase current and three-phase winding flux, the stator three-phase winding back electromotive force can be obtained and expressed as:
[0009]
[0010]
[0011] In the formula, ψ A , B , C is the three-phase winding flux, ψ f is the flux amplitude of the rotor permanent magnet on the three-phase winding, is the electrical angle, L AA , L BB , L CC is the self-inductance of the three-phase winding of the motor stator; M AB 、M AC 、M BC is the mutual inductance between stator windings; i A 、i B 、i C is the motor stator phase current; e A 、e B 、e C is the back electromotive force of the three phases of the stator winding;
[0012] (2) Based on the three-phase voltage equation, according to the Clark coordinate equal-amplitude transformation principle, the voltage equation of PMSM under the α-β coordinate axis is obtained as follows:
[0013]
[0014] In the formula, u α 、u β is the stator voltage under the α-β coordinate axis; i α 、iβ is the stator current under the α-β coordinate axis; e α 、e β is the back electromotive force under the α-β coordinate axis; L α , L β is the inductance under the α-β coordinate axis, and the specific expression is:
[0015]
[0016]
[0017] M αβ is the mutual inductance between the α-β axes under stationary coordinates, and the specific expression is:
[0018]
[0019] Surface-mount PMSM inductors meet L d =L q =L, substituting it into the above formula, the voltage equation in the α-β stationary coordinate system is obtained as follows:
[0020]
[0021] (3) According to the PMSM voltage equation in the α-β coordinate system, the motor current differential equation is written in vector form and forward Euler discretization is performed to obtain the PMSM current prediction equation under the finite set:
[0022]
[0023] Build u αβ The relationship between the switching state of the motor inverter can be expressed as:
[0024] u αβ (k) = ΛS abc (k)
[0025]
[0026] The prediction equation can be expressed as:
[0027]
[0028] In the formula, i αβ (k) is kT s Current sampling value at the moment; i p αβ (k+1) is (k+1)T s The predicted current value obtained at the moment; V n,αβ represents the voltage vector in the α-β coordinate system; the input quantity u αβ is the inverter voltage vector, Sabc is the inverter switching state vector, E is a 3x3 matrix with diagonal elements of -2 and other elements of 1;
[0029] (4) Since the motor control cycle is very short, the rotor speed change within the prediction range can be ignored. Based on the above prediction equation, in the rolling time domain, the vector form of the stator current prediction value at time l+1 is obtained, and then the multi-step current prediction equation is obtained. The prediction value is evaluated to construct the value function:
[0030] X αβ (k) = Γi αβ (k)+YU(k)+Π(k)
[0031] For k to k+N p Evaluate the current prediction value at the moment and construct a multi-step prediction value function
[0032]
[0033] Substituting the current prediction equation into the value function, the value function can be further expressed as:
[0034] J=ξ(k)+2Ξ(k) T U(k)+U(k) T QU(k)
[0035] The above formula can be transformed into the least squares form
[0036] J=(U(k)+Q -1 Ξ(k)) T Q(U(k)+Q -1 Ξ(k))+c(k)
[0037] make Finally, the switching problem is transformed into a least squares problem:
[0038]
[0039]
[0040] In the formula, i e,αβ represents the error between the predicted current value and the reference value; Δu(l) is the loss before and after the switch state changes; λ u is the weight coefficient, c(k) is a constant term that only changes at the sampling time.
[0041] (5) Perform K-best SDA optimization: Define 3N p x2K b Matrix U′ is used to store the node sequence before sorting; define 3N p xK bMatrix U, used to store the sorted first K b node sequence; 2K are defined b An array d' of elements is used to store the 2K before sorting. b node values; defined as K b An array d of elements is used to store the first K sorted b node values; define variable s to record the node positions that need to be calculated at each layer, and all defined values are initially set to 0; where N p and K b They are the prediction step length and the maximum number of nodes retained in each layer. For multi-step prediction, there will be 3N p The layer needs to be calculated, and the node value of each layer is calculated; when the number of nodes in this layer is less than or equal to K b When the number of nodes in this layer is greater than K, all nodes are calculated and retained and extended to the next layer; b When , the nodes are sorted and the K with the smallest value is obtained. b Nodes continue to extend downward; until reaching the last layer 3N p , sort all the obtained node values, get the smallest node value and take its corresponding node as the optimal solution U opt Output.
[0042] Preferably, in step (3), A, B, and F(k) in the current prediction equation can be expressed as:
[0043]
[0044]
[0045]
[0046] Preferably, in step (4), in the rolling time domain, the vector form of the stator current prediction value at time l+1 is:
[0047]
[0048] where l=k,…,k+N p -1;
[0049] X in the current prediction equation and value function αβ (k), Γ, Υ, Π(k), Ξ(k), Q, U(k) can be expressed as:
[0050]
[0051]
[0052]
[0053]
[0054] Ξ(k)=((Γi αβ (k)-Ω(k)) T Υ-λ u (ES abc (k-1)) T S) T
[0055]
[0056] Q=Y T Y+λ u S T S
[0057]
[0058] U(k)=[S abc (k) T ,S abc (k+1) T ,…,S abc (k+N p -1) T ] T
[0059] Where, X αβ * For a given input value, S abc (k) is the switch state of the control cycle output at time k.
[0060] Preferably, in step (5), the node value d′ corresponding to the node of each layer needs to be calculated, and the expression of d′ is:
[0061]
[0062] In the formula, H (i,:) represents the i-th row of matrix H, U (1:i) =[U1,U2,…,U i ] T is a node, representing an array from the first element of U to the i-th element, where i ranges from 1 to 3N p ; d′(0)=0.
[0063] The PMSM multi-step predictive control strategy based on K-best SDA in the present invention is suitable for parallel computing control systems. It adopts the breadth-first principle and greatly increases the simplicity of optimization by limiting the number of candidate solutions at each level that are further passed downward. It does not require backtracking and has a fixed complexity. The results prove the feasibility of applying K-best SDA in PMSM multi-step predictive control. Description of the drawings:
[0064] Figure 1 It is the overall strategy structure diagram of the present invention. Specific implementation method:
[0065] The specific implementation of the present invention will be further described in detail below in conjunction with the accompanying drawings and examples. The following examples are used to illustrate the present invention, but are not intended to limit the scope of the present invention.
[0066] The present invention proposes a multi-step current prediction control method based on K-best SDA for PMSM. The overall control block diagram is as follows: Figure 1 shown.
[0067] The specific implementation process and conditions of the method of the present invention are as follows:
[0068] (1) According to the motor parameters, three-phase current and three-phase winding flux, the stator three-phase winding back electromotive force can be obtained and expressed as:
[0069]
[0070]
[0071] In the formula, ψ A , B , C is the three-phase winding flux, ψ f is the flux amplitude of the rotor permanent magnet on the three-phase winding, is the electrical angle, L AA , L BB , L CC is the self-inductance of the three-phase winding of the motor stator; M AB 、M AC 、M BC is the mutual inductance between stator windings; i A 、i B 、i C is the motor stator phase current; e A 、e B 、e C is the back electromotive force of the three phases of the stator winding;
[0072] (2) Based on the three-phase voltage equation, according to the Clark coordinate equal-amplitude transformation principle, the voltage equation of PMSM under the α-β coordinate axis is obtained as follows:
[0073]
[0074] In the formula, u α 、u β is the stator voltage under the α-β coordinate axis; i α 、i β is the stator current under the α-β coordinate axis; e α 、e β is the back electromotive force under the α-β coordinate axis; L α , L β is the inductance under the α-β coordinate axis, and the specific expression is:
[0075]
[0076]
[0077] M αβ is the mutual inductance between the α-β axes under stationary coordinates, and the specific expression is:
[0078]
[0079] Surface-mount PMSM inductors meet L d =L q =L, substituting it into the above formula, the voltage equation in the α-β stationary coordinate system is obtained as follows:
[0080]
[0081] (3) According to the PMSM voltage equation in the α-β coordinate system, the motor current differential equation is written in vector form and forward Euler discretization is performed to obtain the PMSM current prediction equation under the finite set:
[0082]
[0083] Build u αβ The relationship between the switching state of the motor inverter can be expressed as:
[0084] u αβ (k) = ΛS abc (k)
[0085]
[0086] The prediction equation can be expressed as:
[0087]
[0088] In the formula, i αβ (k) is kT s Current sampling value at the moment; i p αβ (k+1) is (k+1)T s The predicted current value obtained at the moment; V n,αβ represents the voltage vector in the α-β coordinate system; the input quantity u αβ is the inverter voltage vector, S abc is the inverter switching state vector, E is a 3x3 matrix with diagonal elements of -2 and other elements of 1;
[0089] Preferably, in step (3), A, B, and F(k) in the current prediction equation can be expressed as:
[0090]
[0091]
[0092]
[0093] (4) Since the motor control cycle is very short, the rotor speed change within the prediction range can be ignored. Based on the above prediction equation, in the rolling time domain, the vector form of the stator current prediction value at time l+1 is obtained, and then the multi-step current prediction equation is obtained. The prediction value is evaluated to construct the value function:
[0094] X αβ (k) = Γi αβ (k)+YU(k)+Π(k)
[0095] For k to k+N p Evaluate the current prediction value at the moment and construct a multi-step prediction value function
[0096]
[0097] Substituting the current prediction equation into the value function, the value function can be further expressed as:
[0098] J=ξ(k)+2Ξ(k) T U(k)+U(k) T QU(k)
[0099] The above formula can be transformed into the least squares form
[0100] J=(U(k)+Q -1 Ξ(k)) T Q(U(k)+Q -1 Ξ(k))+c(k)
[0101] make Finally, the switching problem is transformed into a least squares problem:
[0102]
[0103]
[0104] In the formula, i e,αβ represents the error between the predicted current value and the reference value; Δu(l) is the loss before and after the switch state changes; λ u is the weight coefficient, c(k) is a constant term that only changes at the sampling time.
[0105] In step (4), in the rolling time domain, the vector form of the stator current prediction value at time l+1 is:
[0106]
[0107] where l=k,…,k+N p -1;
[0108] X in the current prediction equation and value function αβ (k), Γ, Υ, Π(k), Ξ(k), Q, U(k) can be expressed as:
[0109]
[0110]
[0111]
[0112]
[0113] Ξ(k)=((Γi αβ (k)-Ω(k)) T Υ-λ u (ES abc (k-1)) T S) T
[0114]
[0115] Q=Y T Y+λ u S T S
[0116]
[0117] U(k)=[S abc (k) T ,S abc (k+1) T,…,S abc (k+N p -1) T ] T
[0118] Where, X αβ * For a given input value, S abc (k) is the switch state of the control cycle output at time k.
[0119] (5) Perform K-best SDA optimization: Define 3N p x2K b Matrix U′ is used to store the node sequence before sorting; define 3N p xK b Matrix U, used to store the sorted first K b node sequence; 2K are defined b An array d' of elements is used to store the 2K before sorting. b node values; defined as K b An array d of elements is used to store the first K sorted b node values; define variable s to record the node positions that need to be calculated at each layer, and all defined values are initially set to 0; where N p and K b They are the prediction step length and the maximum number of nodes retained in each layer. For multi-step prediction, there will be 3N p The layer needs to be calculated, and the node value of each layer is calculated. When the number of nodes in this layer is less than or equal to K b When the number of nodes in this layer is greater than K, all nodes are calculated and retained and extended to the next layer; b When , the nodes are sorted and the K with the smallest value is obtained. b Nodes continue to extend downward; until reaching the last layer 3N p , sort all the obtained node values, get the smallest node value and take its corresponding node as the optimal solution U opt Output.
[0120] In step (5), it is necessary to calculate the node value d′ corresponding to the node of each layer, and the expression of d′ is:
[0121]
[0122] In the formula, H (i,:) represents the i-th row of matrix H, U (1:i) =[U1,U2,…,U i ] T is a node, representing an array from the first element of U to the i-th element, where i ranges from 1 to 3Np ; d′(0)=0.
[0123] The present invention is an optimization strategy based on K-best SDA, which adopts the breadth-first principle and explores candidate solutions by hierarchical expansion without the need for backtracking, thereby simplifying the optimization process and improving computational efficiency. This method makes multi-step predictive control better suitable for PMSM control of parallel processing systems.
[0124] The above description is only a preferred embodiment of the present invention and is not intended to limit the present invention. Any modifications, equivalent substitutions and improvements made within the spirit and principles of the present invention should be included in the protection scope of the present invention.
Claims
1. A multi-step current prediction control method based on K-best SDA applied to PMSM, characterized by: Firstly, the back EMF is calculated based on the motor parameters, encoder and data collected by the current sensor, and the current in the three-phase coordinate system is transformed to obtain the current in the stationary coordinate system, thereby constructing a multi-step prediction current expression and value function, and converting the value function minimization problem into a least squares problem. Then, based on all the predicted nodes, the K-best SDA optimization algorithm is used to calculate all layers layer by layer. Each layer extends the two cases of 0 and 1 based on the nodes of the previous layer. By limiting the number of candidate solutions at each level, the algorithm complexity is fixed until the last layer, and the node with the smallest output node value is taken as the optimal solution.
2. The multi-step current prediction control method based on K-best SDA applied to PMSM according to claim 1, characterized in that: The method described is as follows: (1) According to the motor parameters, three-phase current and three-phase winding flux, the stator three-phase winding back electromotive force can be obtained and expressed as: In the formula, ψ A , B , C is the three-phase winding flux, ψ f is the flux amplitude of the rotor permanent magnet on the three-phase winding, θ e is the electrical angle, L AA , L BB , L CC is the self-inductance of the three-phase winding of the motor stator; M AB 、M AC 、M BC is the mutual inductance between stator windings; i A 、i B 、i C is the motor stator phase current; e A 、e B 、e C is the back electromotive force of the three phases of the stator winding; (2) Based on the three-phase voltage equation, according to the Clark coordinate equal-amplitude transformation principle, the voltage equation of PMSM under the α-β coordinate axis is obtained as follows: In the formula, u α 、u β is the stator voltage under the α-β coordinate axis; i α 、i β is the stator current under the α-β coordinate axis; e α 、e β is the back electromotive force under the α-β coordinate axis; L α , L β is the inductance under the α-β coordinate axis, and the specific expression is: M αβ is the mutual inductance between the α-β axes under stationary coordinates, and the specific expression is: Surface-mount PMSM inductors meet L d =L q =L, substituting it into the above formula, the voltage equation in the α-β stationary coordinate system is obtained as follows: (3) According to the PMSM voltage equation in the α-β coordinate system, the motor current differential equation is written in vector form and forward Euler discretization is performed to obtain the PMSM current prediction equation under the finite set: Build u αβ The relationship between the switching state of the motor inverter can be expressed as: u αβ (k)=ΛS abc (k) The prediction equation can be expressed as: In the formula, i αβ (k) is kT s Current sampling value at the moment; i p αβ (k+1) is (k+1)T s The predicted current value obtained at the moment; V n,αβ represents the voltage vector in the α-β coordinate system; the input quantity u αβ is the inverter voltage vector, S abc is the inverter switching state vector, E is a 3x3 matrix with diagonal elements of -2 and other elements of 1; (4) Since the motor control cycle is very short, the rotor speed change within the prediction range can be ignored. Based on the above prediction equation, in the rolling time domain, the vector form of the stator current prediction value at time l+1 is obtained, and then the multi-step current prediction equation is obtained. The prediction value is evaluated to construct the value function: X αβ (k)=Γi αβ (k)+YU(k)+Π(k) For k to k+N p Evaluate the current prediction value at the moment and construct a multi-step prediction value function Substituting the current prediction equation into the value function, the value function can be further expressed as: J=ξ(k)+2Ξ(k) T U(k)+U(k) T QU(k) The above formula can be transformed into the least squares form J\(U(k)+Q -1 Ξ(k)) T Q(U(k)+Q -1 Ξ(k))+c(k) make Finally, the switching problem is transformed into a least squares problem: In the formula, i e,αβ represents the error between the predicted current value and the reference value; Δu(l) is the loss before and after the switch state changes; λ u is the weight coefficient, c(k) is a constant term that only changes at the sampling time. (5) Perform K-best SDA optimization: Define 3N p x2K b Matrix U′ is used to store the node sequence before sorting; define 3N p xK b Matrix U, used to store the sorted first K b node sequence; 2K are defined b An array d' of elements is used to store the 2K before sorting. b node values; defined as K b An array d of elements is used to store the first K sorted b Node value; Define variable s to record the node positions that need to be calculated at each layer. All defined values are initially set to 0. p and K b They are the prediction step length and the maximum number of nodes retained in each layer. For multi-step prediction, there will be 3N p The layer needs to be calculated, and the node value of each layer is calculated; when the number of nodes in this layer is less than or equal to K b When the number of nodes in this layer is greater than K, all nodes are calculated and retained and extended to the next layer; b When , the nodes are sorted and the K with the smallest value is obtained. b Nodes continue to extend downward; until reaching the last layer 3N p , sort all the obtained node values, get the smallest node value and take its corresponding node as the optimal solution U opt Output.
3. The multi-step current prediction control method based on K-best SDA applied to PMSM according to claim 2, characterized in that: In step (3), A, B, and F(k) in the current prediction equation can be expressed as:
4. The multi-step current prediction control method based on K-best SDA applied to PMSM according to claim 2, characterized in that: In step (4), in the rolling time domain, the vector form of the stator current prediction value at time l+1 is: where l=k,…,k+N p -1; X in the current prediction equation and value function αβ (k), Γ, Υ, Π(k), Ξ(k), Q, U(k) can be expressed as: Ξ(k)=((Γi αβ (k)-Ω(k)) T Y-l u (ES abc (k-1)) T S) T Q=Y T Y+λ u S T S U(k)=[S abc (k) T ,S abc (k+1) T ,…,S abc (k+N p -1) T ] T Where, X αβ * For a given input value, S abc (k) is the switch state of the control cycle output at time k.
5. The multi-step current prediction control method based on K-best SDA applied to PMSM according to claim 2, characterized in that: In step (5), it is necessary to calculate the node value d′ corresponding to the node of each layer, and the expression of d′ is: In the formula, H (i,:) represents the i-th row of matrix H, U (1:i) =[U1,U2,…,U i ] T is a node, representing the array from the first element of U to the i-th element, where i ranges from 1 to 3N p ; d′(0)=0.