An improved marlin algorithm-based linear active disturbance rejection inverter control parameter setting method for virtual synchronous generator

By improving the flagfish algorithm to optimize the control parameters of the linear active disturbance rejection inverter, the contradiction between grid stability and dynamic response of the virtual synchronous generator is resolved, and the virtual synchronous generator achieves efficient anti-interference and fast response.

CN115276109BActive Publication Date: 2025-12-05NANCHANG UNIV
View PDF 2 Cites 0 Cited by

Patent Information

Application Number
CN202210940400.5
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2022-08-06
Publication Date
2025-12-05
Estimated Expiration
2042-08-06

AI Technical Summary

Technical Problem

Existing virtual synchronous generator control sacrifices dynamic responsiveness while providing grid stability, and active disturbance rejection control has shortcomings in parameter tuning, making it difficult to effectively combine inertial and damping characteristics.

Method used

An improved flagfish algorithm is used to optimize the control parameters of the linear active disturbance rejection inverter. The control parameters of the virtual synchronous generator are tuned by improving the flagfish optimization algorithm. Combined with linear active disturbance rejection control and PI control, the anti-interference performance and fast response are improved.

Benefits of technology

This improves the anti-interference and rapid response capabilities of the virtual synchronous generator, enabling rapid adjustment of active and reactive power, and enhancing the system's stability and dynamic response capabilities.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN115276109B_ABST
    Figure CN115276109B_ABST
Patent Text Reader

Abstract

The application discloses an improved marlin algorithm-based virtual synchronous generator linear active disturbance rejection controller control parameter setting method and relates to the technical field of electric power. The linear active disturbance rejection control is used for improvement on the basis of virtual synchronous generator control. In view of the problem of linear active disturbance rejection control parameter selection, the marlin algorithm (SFO) is introduced to set parameters of the active disturbance rejection controller of the virtual synchronous generator model. Since the marlin algorithm is a group-based algorithm, it is very suitable for optimization problems without structure modification and can play a great role in parameter setting problems. On the basis, the improved marlin optimization algorithm (KSFO) is obtained, so that the marlin optimization algorithm has the advantages of faster global and local convergence and stronger optimization ability. The optimal setting of the active disturbance rejection controller control parameters is realized, and the method has great significance for improving power quality.
Need to check novelty before this filing date? Find Prior Art

Description

TECHNICAL FIELD

[0001] The present application relates to the technical field of electric power, in particular to a virtual synchronous generator linear active disturbance rejection inverter control parameter setting method based on an improved marlin algorithm. BACKGROUND

[0002] Electric energy as a kind of efficient, fast, flexible clean energy, has an irreplaceable position. Distributed power supply is connected to the grid through the inverter, and different control methods are adopted for the inverter, which can realize the conversion of multiple working modes and improve the flexibility of the power system. However, the inertia and damping provided by the synchronous generator gradually replaced by the distributed power supply is an important factor for the stability of the power grid. Therefore, the emergence of virtual synchronous generator is to introduce the inertia and damping of synchronous generator into the inverter control to contribute to the stability of the power grid. Although the virtual synchronous generator provides support for the stability of the power grid, it sacrifices certain dynamic response. Nowadays, active disturbance rejection control is gradually widely studied due to its fast response and anti-interference, which is a control strategy independent of accurate model but has strong anti-interference. SUMMARY

[0003] In order to obtain a better virtual synchronous generator control, the present application provides a virtual synchronous generator linear active disturbance rejection inverter control parameter setting method based on an improved marlin algorithm. On the basis of improving the virtual synchronous generator control by using linear active disturbance rejection control, the improved marlin optimization algorithm is introduced for parameter setting. Since the improved marlin optimization algorithm control has good global and local optimization ability, it can have good effect on the parameter setting in the linear active disturbance rejection control proposed in the present application.

[0004] The present application specifically adopts the following technical solutions:

[0005] A virtual synchronous generator linear active disturbance rejection inverter control parameter setting method based on an improved marlin algorithm:

[0006] Step 1: modeling the virtual synchronous generator type inverter, establishing a voltage circuit double closed loop PI control model of the traditional virtual synchronous generator.

[0007] Step 2: analyzing and studying the principle of linear active disturbance rejection control, selecting a second order linear active disturbance rejection for analysis and modeling, then improving the virtual synchronous generator control, increasing its anti-interference ability and improving the response speed.

[0008] Step 3: taking the THD of the output voltage of the virtual synchronous generator as a performance index of the algorithm objective function, adding another index, the integral of the absolute value multiplied by time ITAE, and then adding the control target considering the appropriate damping ratio, i.e. the optimal damping ratio 0.707 of the second order system, and weighting the three to establish the objective function.

[0009] Step 4: Parameter tuning is performed using the improved swordfish optimization algorithm KSFO to find the control parameters w of the linear active disturbance rejection control o and w c The optimal fitness value corresponding to the best parameters is substituted into the simulation model, and the kp and ki of the original PI control voltage and current double closed loop are simultaneously optimized as variables.

[0010] Step 5: The output control signals U generated by the active disturbance rejection control and PI control are modulated by the PWM modulator to control the inverter, realizing the output of the inverter of the virtual synchronous generator strategy.

[0011] Further, in step 2, the linear active disturbance rejection principle is improved as follows:

[0012] A typical second-order LADRC is analyzed, and the relationship of the second-order system is as follows:

[0013]

[0014] In the formula, y is the system output, u is the control input, ω is the external disturbance, a1 and a2 are system parameters, and b is the control gain. Considering that ω, a1, a2, and b are all unknown numbers, a known number b0 is assumed, and the formula (1) can be simplified as:

[0015]

[0016] Among them is the sum of all internal and external uncertainties in the system.

[0017] Let x2 = y, x3 = f, x3 is the system extended state variable, then formula (2) can be expressed as:

[0018]

[0019] According to formula (3), a three-order linear extended state observer (LESO) can be established:

[0020]

[0021] When the controller gains β1, β2, and β3 are selected, the estimated value can track the state variable in real time, i.e. z1→x1, z2→x2, z3→x3, z4→x4.

[0022] The linear state error feedback law (LESF) is designed, and the control law of the system is:

[0023]

[0024] Then the system output y, i.e. formula (1), can be written as:

[0025]

[0026] Since the system can be approximately considered as a pure integral series object, it is not necessary to introduce an integral element in the controller, which can ensure the system stability and avoid the disadvantages of integral element, i.e. affecting the dynamic performance of the system. The above-described second-order linear active disturbance rejection controller can be controlled by a proportional-derivative controller, i.e.

[0027] u0=k p (v-z1)-k d z2 (7)

[0028] In the formula: k p , k d is the controller gain.

[0029] Thus, the design of the second-order active disturbance rejection controller is completed, and the selection of the observer gain and the controller gain parameters can be obtained by referring to the pole placement method.

[0030] β1=3ω o ,

[0031] k d =2ω c

[0032] In the formula: ω o is the observer bandwidth; ω c is the controller bandwidth.

[0033] Further, the parameter setting method of the sailfish optimization algorithm KSFO in step 4 is as follows:

[0034] Step 1: Perform chaotic initialization, randomly generate initial sailfish and sardine populations in the given search space, and then perform Sine chaotic mapping on the initial population to add universal representation of initial samples, wherein the sailfish population is represented by X SF , the sardine population is represented by X F , and the fitness values of all solutions of the sailfish and sardine are calculated.

[0035] Step 2: Calculate the fitness values of the sailfish and sardine, and record the optimal fitness value and position, select the population with the best fitness value of the sailfish represented by X eliteSF , and select the population with the best fitness value of the sardine represented by X injuredS .

[0036] Step3: Position update of the bannerfish. Since the bannerfish does not only attack from top to bottom or from right to left, they can attack from all directions and the attack range is constantly shrinking. Therefore, the bannerfish update their position around a sphere as the best solution, the specific formula is as follows:

[0037]

[0038] In the formula, X oldSF , X newSF correspond to the old and new positions of the current bannerfish respectively;

[0039] Where λ i is defined as follows:

[0040] λ i = 2 x rand(0, 1) x PD - PD

[0041] Where PD represents the density of the prey group, the specific formula is as follows:

[0042]

[0043] Where N SF and N S represent the number of bannerfish and sardines respectively.

[0044] Step4: Position update of the sardines. At the beginning of the hunt, the bannerfish has more energy to catch prey, and the sardines will not be more tired and injured, and the sardines can maintain a high escape speed. Gradually, the attack ability of the bannerfish will weaken with the passage of time, and due to the intensity and frequency of the attack, the energy stored in the prey will also decrease, which may reduce the ability to detect the direction of the bannerfish position information, thereby affecting the escape strategy of the fish school. Finally, the sardines will be hit by the beak of the bannerfish and break away from the school, and soon be captured. The specific formula for simulating the movement of sardines is as follows:

[0045] X i newS = r x (X i eliteSF - X i oldS + AP)

[0046] Where r is a random number between 0 and 1, representing the dispersion rate of the prey sardines around the predator, and AP represents the attack strength of the bannerfish, which is defined as follows:

[0047] AP = A x (1 - (2 x Itr x e))

[0048] Step5: attack judgment, since the sardines position update and the marlin attack force is related, the above formula A, e control control attack force transformation, make A linear transformation to 0. When AP>0.5, update the sardines all position with the above formula. When AP<0.5, update the sardines part position. The range of part position is defined as follows:

[0049] α=N S ×AP

[0050] β=d i ×AP

[0051] Where d i is the number of variables of the i-th iteration, α represents the number of sardines to be updated, and β represents the number of dimensions to be updated.

[0052] Step6: sardines, marlin position replacement, in the last stage of hunting, the injured sardines break away from the school and will be captured soon. In this algorithm, it is assumed that sardines are more suitable for predation than marlins. In this case, the position of marlin will be replaced with the latest position of the preyed sardines, thereby increasing the opportunity to catch new prey. The specific formula is as follows:

[0053] X i SF =X i S ,if f(S i )<f(SF i )

[0054] Step7: Cauchy mutation is performed on the position of the optimal individual, i.e. the elite marlin, while marlin and sardine individuals are selected by random roulette to perform mutation, thereby increasing the diversity of samples and the ability to jump out of local optimum. The formula of Cauchy mutation operator is as follows:

[0055] x newbest =x best +x best ×Cauchy(0,1)

[0056] Cauchy(0,1)=tan((rand-0.5)×π)

[0057] Step8: Calculate all fitness values and update the record of optimal fitness value and position.

[0058] Step9: Determine whether the iteration stopping condition is met. If it is met, output the optimal solution and end the program; otherwise, repeat steps Step2 to Step7.

[0059] Step10: According to the optimal result obtained, two control parameters wo and w c .

[0060] Step 11: Repeat the above steps, but the control variables in the model are changed to Kp and Ki in the double closed-loop control.

[0061] Further, the linear active disturbance rejection technology used in Step 2 is improved for virtual synchronous generator control, which has the advantages of inertia and damping, and increases the high disturbance rejection and fast response ability of active disturbance rejection control, improving the dynamic response ability of virtual synchronous control.

[0062] Further, the initialization of the population in Step 1 is based on the virtual synchronous inverter based on active disturbance rejection control, which realizes fast regulation of active power and reactive power under grid-connected conditions. The virtual synchronous generator is improved by linear active disturbance rejection control, which improves the anti-interference ability and fast response ability of the virtual synchronous generator. The observer bandwidth w o and the controller bandwidth w c are tuned, and the corresponding initialization of the two parameters is w o and w c . The tuning of Kp and Ki of the double closed-loop pi control corresponds to the initialization of four parameters, Kpu, Kiu, Kpi, and Kii of the voltage outer loop and the current inner loop.

[0063] Further, in Step 2, the fitness values of all fish in the population are calculated, and the best fitness value in the population is set as the current position. In the simulation model of virtual synchronous generator control, there is an optimal position fitness value in each iteration, that is, there is a unique optimal parameter in each iteration. The best damping ratio, THD, and ITAE are used as parameter tuning indicators, and different weight coefficients are added to make the multi-objective optimization problem into a single-objective optimization problem. The objective function established in this way is:

[0064]

[0065] A+B+C+D=1

[0066]

[0067]

[0068] where ABCD are different weight coefficients, parameters T and t are in the formula of ITAE, t represents the current time, T represents the running time, A = B = 0.2, C = D = 0.3, P(t), P n (t) are the active power output value and reference value of the virtual synchronous generator, respectively, Q(t), Q n(t) are respectively the virtual synchronous reactive power output value and the reference value, ω0 is the rated angular frequency, J is the virtual inertia in the virtual synchronization, D is the damping coefficient in the virtual synchronization, U is the virtual synchronization output voltage, E is the grid terminal voltage, X is the line inductance impedance, K w is the active frequency droop coefficient, so that the multi-objective optimization becomes a single-objective optimization problem, e1(t) is the error of the actual output active power and the reference active power; e2(t) is the error of the actual output reactive power and the reference reactive power; u zo1 and u zon are the fundamental wave and harmonic amplitudes of the inverter load end voltage.

[0069] The beneficial effects of the present application are:

[0070] The linear active disturbance rejection control is used to improve the virtual synchronous generator control, so that the anti-interference and fast response of the virtual synchronous control are improved. The flagfish optimization algorithm is improved, so that the optimization ability is more prominent, and the parameter setting problem can play a great role. The flagfish optimization algorithm has the advantages of fast global and local convergence and strong optimization ability, and can play a good role in the control parameter setting of the linear active disturbance rejection controller of the virtual synchronous inverter. The active power and the reactive power are effectively adjusted, the stable power table output of the virtual synchronous generator is realized, and the anti-interference ability is improved. BRIEF DESCRIPTION OF DRAWINGS

[0071] Figure 1 Flow chart of improved flagfish optimization algorithm in virtual synchronous generator inverter control parameter setting;

[0072] Figure 2 Virtual synchronous generator topology and control block diagram;

[0073] Figure 3 Linear active disturbance rejection control;

[0074] Figure 4 Control parameter setting adaptive value curve;

[0075] Figure 5 Virtual synchronous generator double closed loop PI control output voltage, current and power waveform;

[0076] Figure 6 Linear active disturbance rejection improved virtual synchronous generator output voltage, current and power waveform. DETAILED DESCRIPTION

[0077] The technical solutions in the examples of the present application will be described clearly and completely in combination with the drawings in the examples of the present application.

[0078] As Figures 1-6As shown, one example of the present application discloses a virtual synchronous generator linear active disturbance rejection inverter control parameter setting method based on improved marlin algorithm, comprising the following steps:

[0079] Step 1: modeling the virtual synchronous generator type inverter, establishing the voltage circuit double closed loop PI control model of the traditional virtual synchronous generator.

[0080] Step 2: analysis and research on linear active disturbance rejection control principle, selection of second order linear active disturbance rejection for analysis and modeling, then improvement of virtual synchronous generator control, increase of its anti-interference ability and improvement of response speed.

[0081] Step 3: taking THD of virtual synchronous generator output voltage as a performance index of algorithm objective function, adding another index, integral of absolute value multiplied by time ITAE, and then adding control target considering appropriate damping ratio, i.e. second order system optimal damping ratio 0.707, and establishing target function by weighting.

[0082] Step 4: parameter setting by improved marlin optimization algorithm KSFO, finding out control parameters w o and w c Optimal fitness value corresponding to the best parameters are substituted into the simulation model, and at the same time, the kp and ki of original PI control voltage and current double closed loop are taken as variables for parameter optimization.

[0083] Step 5: output control signals U generated by active disturbance rejection control and PI control are subjected to PWM modulator for inverter control, realizing inverter output of virtual synchronous generator strategy.

[0084] Step 6: comparison of simulation waveforms of linear active disturbance rejection improved virtual synchronous generator control and original PI control according to algorithm setting, verifying the effectiveness of the method proposed by the present application.

[0085] Further, in step 2, the linear active disturbance rejection principle is improved as follows:

[0086] Typical second order LADRC is analyzed, and the relationship of second order system is as follows:

[0087]

[0088] In the formula, y is system output, u is control input, ω is external disturbance, a1, a2 are system parameters, and b is control gain. Considering that ω, a1, a2 and b are all unknown numbers, a known number b0 is assumed, and formula (1) can be simplified as:

[0089]

[0090] Among them The sum of all uncertainties in the system, both internal and external.

[0091] Let x2 = y, x3 = f, x3 is the system extended state variable, then formula (2) can be expressed as:

[0092]

[0093] According to formula (3), a third-order linear extended state observer (LESO) can be established:

[0094]

[0095] At the time when the controller gains β1, β2 and β3 are selected, the estimated value can track the state variable in real time, that is, z1→x1, z2→x2, z3→x3, z4→x4.

[0096] Corresponding to the linear state error feedback law (LESF) design, the control law of the system is:

[0097]

[0098] Then the system output y, that is, formula (1) can be written as:

[0099]

[0100] Since the system can be approximately considered as a pure integral series object, it is not necessary to introduce an integral element in the controller, which can ensure the stability of the system and avoid the shortcomings of the integral element, that is, affecting the dynamic performance of the system. Therefore, the above-described second-order linear active disturbance rejection controller can be controlled by a proportional-derivative controller, that is:

[0101] u0 = k p (v-z1)-k d z2(7)

[0102] In the formula: kp, kd are controller gains.

[0103] Thus, the design of the second-order active disturbance rejection controller is completed. With reference to the pole placement method, the selection of the observer gain and the controller gain parameters can be obtained:

[0104] β1 = 3ω o ,

[0105] k d = 2ω c

[0106] In the formula: ωo is the observer bandwidth; ωc is the controller bandwidth.

[0107] Further, the parameter setting method of the sailfish optimization algorithm KSFO is improved in step 4 as follows:

[0108] Step1: Chaos initialization, randomly generate initial sailfish and sardine populations in the given search space, and then perform Sine chaos mapping on the initial population to add universal representation of initial samples, wherein the sailfish population is represented by X SF , the sardine population is represented by X F , and the fitness values of all solutions of sailfish and sardine are calculated.

[0109] Step2: Calculate the fitness values of sailfish and sardine, and record the optimal fitness value and position, select the population with the best fitness value of sailfish represented by X eliteSF , and select the population with the best fitness value of sardine represented by X injuredS .

[0110] Step3: Sailfish position update, because sailfish do not only attack from top to bottom or from right to left, they can attack from all directions, and the attack range is constantly reduced. Therefore, sailfish update their position around the best solution of a sphere, and the specific formula is as follows:

[0111]

[0112] In the formula, X oldSF , X newSF correspond to the old and new positions of the current sailfish respectively;

[0113] wherein λ i is a coefficient defined as follows:

[0114] λ i = 2 * rand(0, 1) * PD - PD

[0115] wherein PD represents the density of the prey population, and the specific formula is as follows:

[0116]

[0117] wherein N SF and N S represent the number of sailfish and sardines respectively.

[0118] Step4: sardines position update, at the beginning of hunting, the sailfish has more energy to catch prey, and the sardines will not be more tired and injured, and the sardines can also maintain a high escape speed. Gradually, the attack ability of the sailfish will weaken with the passage of time, and the energy stored in the prey will also decrease due to the intensity and frequency of the attack, which may reduce the ability to detect the direction of the sailfish position information, thereby affecting the escape strategy of the fish school. Finally, the sardines will be hit by the beak of the sailfish and break away from the school, and will soon be captured. The specific formula for simulating the movement of sardines is as follows:

[0119] X i newS = r x (X i eliteSF - X i oldS + AP)

[0120] where r is a random number between 0 and 1, representing the dispersion rate of prey sardines around the predator, and AP represents the attack strength of the sailfish, which is defined as follows:

[0121] AP = A x (1 - (2 x Itr x e))

[0122] Step5: attack strength judgment, since the position update of sardines is related to the attack strength of the sailfish, the above formula A, e controls the transformation of attack strength, making A linearly transform to 0. When AP > 0.5, update all positions of sardines using the above formula. When AP < 0.5, update part of the position of sardines. The range of part of the position is defined as follows:

[0123] α = N S x AP

[0124] β = d i x AP

[0125] where d i is the number of variables at the i-th iteration, α represents the number of sardines to be updated, and β represents the number of dimensions to be updated.

[0126] Step6: sardines, sailfish position replacement, at the last stage of hunting, the injured sardines break away from the school and are soon captured. In this algorithm, it is assumed that sardines are more suitable for predation than sailfish. In this case, the position of the sailfish will be replaced with the latest position of the prey sardines, thereby increasing the opportunity to catch new prey. The specific formula is as follows:

[0127] X i SF = X i S , if f(S i ) < f(SF i )

[0128] Step7: Perform Cauchy mutation on the position of the optimal individual, i.e., the elite marlin, and simultaneously perform mutation on the marlin and sardine individuals by random roulette selection to increase the diversity of the sample and the ability to jump out of the local optimum. The formula of the Cauchy mutation operator is as follows:

[0129] x newbest =x best +x best ×Cauchy(0,1)

[0130] Cauchy(0,1)=tan((rand-0.5)×π)

[0131] Step8: Calculate all the fitness values and update the record of the optimal fitness value and position.

[0132] Step9: Determine whether the iteration stopping condition is met. If yes, output the optimal solution and end the program; otherwise, repeat steps Step2 to Step7.

[0133] Step10: According to the optimal result obtained, two control parameters w o and w c of the active disturbance rejection controller of the virtual synchronous control are calculated.

[0134] Step11: Repeat the above steps, but change the control variables in the model to Kp and Ki in the double closed-loop control.

[0135] In this example, the linear active disturbance rejection technology used in Step2 is improved for virtual synchronous generator control, which has the advantages of moment of inertia and damping, and increases the high disturbance rejection and fast response ability of the active disturbance rejection control, thereby improving the dynamic response ability of the virtual synchronous control.

[0136] In this example, the population initialization in Step1 is based on the virtual synchronous inverter with active disturbance rejection control, which realizes fast adjustment of active power and reactive power under grid-connected conditions. The virtual synchronous generator is improved by linear active disturbance rejection control, which improves the anti-interference ability and fast response ability of the virtual synchronous generator. The observer bandwidth w o and the controller bandwidth w c in the second-order linear active disturbance rejection controller are set, and the corresponding initialization of the two parameters w o and w c is performed. The Kp and Ki of the double closed-loop pi control are set, and the corresponding initialization of the four parameters Kpu, Kiu, Kpi, and Kii of the voltage outer loop and the current inner loop is performed.

[0137] In this example, the fitness value of all fish populations in the population is calculated in Step 2, and the best fitness value in the population is selected as the current position. In the simulation model of the virtual synchronous generator control, the fitness value of the optimal position exists in each iteration, that is, there is a unique optimal parameter in each iteration, and the optimal damping ratio, THD and ITAE are used as parameter setting indexes, and different weight coefficients are added to make the multi-objective optimization become a single-objective optimization problem, and the objective function established is:

[0138]

[0139] A+B+C+D=1

[0140]

[0141]

[0142] In the formula: ABDC are different weight coefficients, parameters T and t, which are in the formula of ITAE, t represents the current time, T represents the running time, A = B = 0.2, C = D = 0.3, P (t) and P n (t) are the active power output value and the reference value of the virtual synchronous respectively, Q (t) and Q n (t) are the reactive power output value and the reference value of the virtual synchronous respectively, ω0 is the rated angular frequency, J is the virtual inertia in the virtual synchronous, D is the damping coefficient in the virtual synchronous, U is the output voltage of the virtual synchronous, E is the grid terminal voltage, X is the line inductance impedance, K w is the active frequency droop coefficient, so that the multi-objective optimization becomes a single-objective optimization problem, e1 (t) is the error of the actual output active power and the reference active power; e2 (t) is the error of the actual output reactive power and the reference reactive power; u zo1 and u zon are the fundamental wave and harmonic amplitude of the inverter load end voltage.

[0143] The virtual synchronous generator linear active disturbance rejection inverter control parameter setting method based on the improved marlin algorithm is adopted, and Figure 4 It can be seen that the improved marlin optimization algorithm is fast in parameter setting, and the optimization accuracy is also high. Through Figure 5 and Figure 6 It can be seen that the linear active disturbance rejection control improves the virtual synchronous generator control, when the load is disturbed, the linear active disturbance rejection improves the overshoot and oscillation of the output current, and the output active and reactive can recover to stable faster.

[0144] Finally, it is to be understood that the above description is intended to be illustrative and not restrictive. Many other embodiments will be apparent to those of skill in the art upon reading the above description. The scope of the application should therefore, be determined not with reference to the above description, but should instead be determined with reference to the appended claims, along with their full scope of equivalents. The disclosure of all articles and references referred to herein are incorporated by reference in their entirety.

Claims

1. A method for tuning control parameters of a virtual synchronous generator linear active disturbance rejection inverter based on an improved flagfish algorithm, characterized in that: Includes the following steps: Step 1: Model the virtual synchronous generator inverter and establish a dual closed-loop PI control model for the voltage circuit of a traditional virtual synchronous generator. Step 2: Analyze and study the principle of linear active disturbance rejection control, select second-order linear active disturbance rejection for analysis and modeling, and then improve the virtual synchronous generator control; Step 3: Use the THD of the virtual synchronous generator output voltage as a performance index of the algorithm's objective function, and add another index, the absolute value multiplied by the time integral ITAE, and then add the control objective considering a suitable damping ratio, i.e., the optimal damping ratio of the second-order system of 0.

707. The objective function is established by weighting these three factors, including: A+B+C+D=1 In the formula: ABCD are different weight coefficients, parameters T and t are the values ​​of ITAE, where t represents the current time, T represents the running time, A=B=0.2, C=D=0.3, P(t), P n Q(t) and Q(t) represent the active power output and reference values ​​of the virtual synchronization, respectively. n (t) represents the reactive power output and reference value of virtual synchronization, respectively; ω0 is the rated angular frequency; J is the virtual inertia in virtual synchronization; D is the damping coefficient in virtual synchronization; U is the output voltage of virtual synchronization; E is the grid terminal voltage; X is the line inductance impedance; K w Let e1(t) be the active power frequency droop coefficient, which transforms the multi-objective optimization problem into a single-objective optimization problem; e2(t) is the error between the actual output active power and the reference active power; u is the error between the actual output reactive power and the reference reactive power. zo1 and u zon These are the fundamental and harmonic amplitudes of the inverter load terminal voltage; Step 4: Use the improved Sailfish Optimization Algorithm (KSFO) to tune the parameters and find the control parameters w for linear active disturbance rejection control. o and w c The optimal parameters corresponding to the optimal fitness value are substituted into the simulation model, and kp and ki of the original PI-controlled voltage and current dual closed loop are used as variables for parameter optimization. Step 5: The output control signal U generated by active disturbance rejection control and PI control is used to control the inverter through a PWM modulator to realize the inverter output of the virtual synchronous generator strategy.

2. The method for tuning control parameters of a virtual synchronous generator linear active disturbance rejection inverter based on an improved flagfish algorithm according to claim 1, characterized in that: The linear active disturbance rejection technology used in step 2 improves the virtual synchronous generator control, making it not only have the advantages of rotational inertia and damping, but also increase the active disturbance rejection control's ability to suppress disturbances and respond quickly, thereby improving the dynamic response capability of the virtual synchronous control. The linear active disturbance rejection principle in step 2 is improved as follows: A typical second-order LADRC analysis is performed, assuming the following relationship for the second-order system: In the formula, y is the system output. Let u represent the first and second derivatives of the system output, ω represent the external disturbance, a1 and a2 represent the system parameters, and b represent the control gain. Considering that ω, a1, a2, and b are all unknowns, and assuming a known value b0, the formula (1) can be simplified as follows: in This is the sum of all uncertain rotations, both internal and external, within the system. Let x1 = y, If x3 = f is the system's extended state variable, then formula (2) can be expressed as: According to equation (3), a third-order linear extended state observer (LESO) can be established: When the controller gains β1, β2, and β3 are selected, the estimated values ​​can track the state variables in real time, i.e., z1→x1, z2→x2, and z3→x3. The corresponding linear state error feedback (LESF) law is designed, and the system control law is taken as follows: The system output y, i.e., equation (1), can be written as: Since the system can be approximated as a purely integral cascaded object, the second-order linear active disturbance rejection controller described above is controlled by a proportional-derivative controller, i.e.: u0=k p (v-z1)-k d z2 (7) In the formula: k p k d For controller gain; This completes the design of the second-order active disturbance rejection controller. The selection of the observer gain and controller gain parameters can be obtained by referring to the pole placement method: In the formula: ω o ω is the observer bandwidth; c This refers to the controller bandwidth.

3. The method for tuning control parameters of a virtual synchronous generator linear active disturbance rejection inverter based on an improved flagfish algorithm according to claim 1, characterized in that: The parameter tuning method for the improved KSFO optimization algorithm in step 4 is as follows: Step 1: Perform chaotic initialization. Randomly generate initial flagfish and sardine populations within the given search space. Then perform Sine chaotic mapping on the initial populations to increase the general representativeness of the initial samples. The flagfish population is represented by XSF and the sardine population is represented by XF. Calculate the fitness values ​​of all solutions for flagfish and sardine respectively. Step 2: Calculate the fitness values ​​of sailfish and sardines, and record the optimal fitness value and location. Select the population with the best sailfish fitness value as X. eliteSF This indicates that the population with the best sardine fitness value was selected using X. injuredS express; Step 3: Sailfish Position Update. Because sailfish don't just attack from top to bottom or right to left, they attack from all directions, and their attack range is constantly shrinking; therefore, the optimal solution for sailfish to update their positions around a sphere is as follows: In the formula, X oldSF X newSF These correspond to the old and new positions of the current sailfish, respectively. Where λ i The coefficient is defined as follows: l i =2×rand(0,1)×PD-PD Where PD represents the density of the prey population, and the specific formula is as follows: Where N SF and N S These represent the number of sailfish and sardines, respectively. Step 4: Sardines' Position Update. At the start of the hunt, the sailfish has more energy to catch prey, and the sardines are less tired and less likely to get injured. They can also maintain a high escape speed. Gradually, the sailfish's attack ability weakens as the hunt progresses. Due to the intensity and frequency of attacks, the prey's stored energy decreases, potentially reducing its ability to detect the sailfish's location and direction, thus affecting the school's escape strategy. Ultimately, the sardines are struck by the sailfish's beak, break free from the school, and are quickly captured. The specific formula simulating sardine movement is as follows: X i newS =r×(X i eliteSF -X i oldS +AP) Where r is a random number between 0 and 1, representing the dispersion rate of the prey sardines around the predator, and AP represents the attack strength of the sailfish, which is defined as follows: AP=A×(1-(2×Itr×e)) Step 5: Attack Power Judgment. Since the sardine's position update is related to the sailfish's attack power, A and e in the above formula control the change in attack power, making A linearly transform to 0; when AP > 0.5, the above formula is used to update all sardine positions; when AP < 0.5, some sardine positions are updated, and the range of some positions is defined as follows: α=N S ×AP β=d i ×AP Where d i α represents the number of variables in the i-th iteration, α represents the number of sardines to be updated, and β represents the number of dimensions to be updated. Step 6: Sardines and Sailfish Position Swap. In the final stage of the hunt, injured sardines break free from the school and are quickly caught. In this algorithm, it is assumed that sardines are better suited for hunting than sailfish. In this case, the position of the sailfish will be swapped with the latest position of the prey sardine, thereby increasing the chance of catching new prey. The specific formula is as follows: X i SF =X i S ,if f(S i )<f(SF i ) Step 7: Perform Cauchy mutation on the optimal individual, i.e., the elite sailfish. Simultaneously, use a random roulette wheel to select sailfish and sardine individuals for mutation, increasing sample diversity and the ability to escape local optima. The Cauchy mutation operator formula is as follows: x newbest =x best +x best ×Cauchy(0,1) Cauchy(0,1)=tan((rand-0.5)×π) Step 8: Calculate all fitness values ​​and update the record of the best fitness value and position; Step 9: Determine if the iteration stopping condition is met. If it is met, output the optimal solution and end the program; otherwise, repeat steps 2 to 7. Step 10: Based on the obtained optimal result, calculate the two control parameters w of the active disturbance rejection controller for virtual synchronization control. o and w c ; Step 11: Repeat the above steps, but change the control variables in the model to Kp and Ki in the double closed-loop control.

4. The method for tuning control parameters of a virtual synchronous generator linear active disturbance rejection inverter based on an improved flagfish algorithm according to claim 3, characterized in that: In Step 1, the population initialization is based on a virtual synchronous inverter with active disturbance rejection control (ADRC). Under grid-connected conditions, it enables rapid adjustment of active and reactive power. The virtual synchronous generator is improved through linear ADRC, enhancing its anti-interference capability and rapid response. The observer bandwidth w in the second-order linear ADRC controller is also improved. o and controller bandwidth w c To perform tuning, the corresponding initialization involves two related parameters, w. o and w c For the tuning of Kp and Ki in dual closed-loop pi control, four parameters are initialized accordingly: Kpu, Kiu and Kpi, Kii for the voltage outer loop and the current inner loop, respectively.

5. The method for tuning control parameters of a virtual synchronous generator linear active disturbance rejection inverter based on an improved flagfish algorithm according to claim 3, characterized in that: In Step 2, the fitness values ​​of all fish in the population are calculated, and the best fitness value in the population is selected as the current position. In the simulation model of virtual synchronous generator control, there is an optimal fitness value in each iteration, that is, each iteration has a uniquely determined optimal parameter. The optimal damping ratio, THD and ITAE are used as parameter tuning indices, and different weight coefficients are added to turn the multi-objective optimization into a single-objective optimization problem, thus establishing the objective function.

Citation Information

Patent Citations

  • An active disturbance rejection control method for grid-connected photovoltaic inverter based on virtual synchronous machine

    CN109193760A

  • Method for setting control parameters of double parallel inverters based on sailfish algorithm

    CN113505873A