1. Field of the Invention
The present invention relates to energy storage devices, and particularly to an adaptive superconductive magnetic energy storage (SMES) control method and system.
2. Description of the Related Art
Because of diminishing oil reserves and environmental concerns, renewable energy research is gaining momentum. Wind energy in itself encompasses various engineering fields and is rapidly developing into a multi-disciplinary area of research and experimentation. In wind generation systems, the variable speed, doubly fed induction generator (DFIG) is preferred over the permanent magnet synchronous generator (PMSG) for its versatility. Background details on the various wind turbine systems may be found in U.S. patent Publication Ser. No. 13/862,327, filed on Apr. 12, 2013, which is incorporated by reference in its entirety herein. The '327 patent application and the present patent application have a common inventor, Abu Hamed Abdur-Rahim.
The control of energy storage devices fed by the aforementioned wind turbines is necessary, since by controlling the energy storage device, power that flows to the grid can be adjusted. The system dynamics relied upon in some installations use a PI (proportional-integral) controller. Many installations use Fuzzy logic to find the energy storage device controller parameters. A self-tuning fuzzy PID (proportional-integral-derivative) controller has been described in the related art. Robust controllers for output power leveling of energy storage systems are also available in the literature. The use of generalized predictive control has also been reported. Moreover, the literature reports a neural network capable of self-tuning for different operating conditions.
An energy storage device gaining increasing popularity is the superconductive magnetic energy storage (SMES) device. The SMES is a device that can deliver both real and reactive power, and hence provides good damping to a PMSG system.
SMES has found widespread application in power systems. However, studies on application of this powerful energy storage device in PMSG wind generator systems are virtually missing. Because of the erratic nature of wind speed variations, this storage device, which can compensate for both real and reactive power, is expected to be a useful control tool.
Wind turbulence and grid faults are the main concerns in a PMSG wind turbine system. Because of them, systems are not able to meet the active and reactive power demand during these faults. Energy storage devices may improve wind system performance by providing active power to the system at the time of contingencies. Variable speed wind generators integrated with an energy storage system are getting attention in recent times.
Thus, an adaptive superconductive magnetic energy storage (SMES) control method and system solving the aforementioned problems is desired.
The adaptive superconductive magnetic energy storage (SMES) control method and system involves generating starting weights for a neural network by training the network from input-output data created by an improved particle swarm optimization (IPSO) procedure. Tests carried out show that the proposed adaptive SMES controller maintains the DC capacitor voltage constant, thus improving the efficiency of wind energy transfer. The power output (reactive and real) of the SMES improves the voltage profile following large voltage dips, and at the same time, provides added damping to the system.
These and other features of the present invention will become readily apparent upon further review of the following specification and drawings.
Similar reference characters denote corresponding features consistently throughout the attached drawings.
At the outset, it should be understood by one of ordinary skill in the art that embodiments of the present method can comprise software or firmware code executing on a computer, a microcontroller, a microprocessor, or a DSP processor; state machines implemented in application specific or programmable logic; or numerous other forms without departing from the spirit and scope of the method described herein. The present method can be provided as a computer program, which includes a non-transitory machine-readable medium having stored thereon instructions that can be used to program a computer (or other electronic devices) to perform a process according to the method. The machine-readable medium can include, but is not limited to, floppy diskettes, optical disks, CD-ROMs, and magneto-optical disks, ROMs, RAMs, EPROMs, EEPROMs, magnetic or optical cards, flash memory, or other type of media or machine-readable medium suitable for storing electronic instructions, but excludes intangible media or transient waveforms or signals.
A superconductive magnetic energy storage (SMES) device stores energy in the form of a magnetic field, which is generated by the flow of DC current in a coil. This coil is cryogenically cooled. This technology has been used to improve the power quality of the industries. SMES technology uses a superconducting coil, which is virtually free from electrical resistance. If a SMES were to use conventional wire, such as copper, at non-superconducting temperatures, the magnetic energy would be dissipated as heat due to the wire's resistance to the flow of current. An exemplary SMES device 102 is shown in
In the present system, as shown in
As shown in
The SMES-equipped generic power generation system 404 sends a measurement of the actual power and voltage (Pg, Vg) to the summation unit 406 so that the summation unit can provide error power and voltage signals (ΔPg, ΔVg) to the input of the SMES controller 2104, which outputs corrective real power and reactive power signals (ΔPSM, ΔQSM) to the SMES of system 404. The system 404 outputs a y performance measurement to a second summation unit 408. The y performance measurement is summed with an RBFNN reference parameter, r, to generate an error signal ea, which is fed as an input to the adaptive algorithm 410. This error signal, ea, is used by the RBFNN 412 to update its weights. Once a weight update has been performed by the RBFNN 412, the RBFNN outputs a new set of gain and time constants (KPG, KVG, TPG, TPVG) to the SMES controller 2104.
As shown in
Recently, the RBFNN has been widely used to model and approximate non-linear functions. Here a RBFNN is employed to model the relationship between the input variable, Ip, and the system control, u. The weightings between hidden layer neurons and output layer neurons are adjusted based on an adaptive rule. In the present method, an RBFNN-based controller 412 is proposed by an adaptive rule. The control input of the RBFNN controller 412 is:
The adaptive rule is used to adjust the weightings for searching the optimal weighting values and obtaining the stable convergence property. The adaptive rule is derived from the steepest descent rule to minimize the value of ea with respect to wj. Then, the updated equation of the weighting parameters is:
wjnew=wjold+wj(t+1), (2)
where wj (t+1) is the predicted value of the weight vector, wjold is the present value of the weight vector, and wjnew is the new value of the weight vector. Also,
and
ea(t)=r(t)−y(t) (4)
where r(t) is the summation of the output of the RBFNN model, y(t) is the output generated by the system, k=1, 2, 3 . . . m; and η is the regulation factor. The error ea is a linear difference between r and y used to update the weights vector.
Based on the chain rule, equation (3) can be rewritten as:
where ρ is the learning rate parameter. The overall weights of the network which will be updated by using an adaptive RBFNN algorithm are:
w1new=w1old+w1(t+1) (7)
wmnew=wmold+wm(t+1). (8)
The adaptive control scheme, as presented in
As shown in
As shown in
where Δigd is the generator real current (d-axis current), Δdgq is the generator quadrature current (q-axis current), Δδ is the generator phase angle, Δω is the generator speed, Δθz is the torsional twist angle of the generator shaft, Δωt is the (wind) turbine speed, ΔVc is the DC link capacitor voltage, Δiid is the inverter side d-axis current, Δiiq is the inverter side q-axis current, ΔIdc is the total DC current available from the SMES to an external AC bus, ΔPSM is the real power available from the SMES, and ΔQSM is the reactive power available from the SMES.
The SMES is capable of supplying both real and reactive power by adjusting the firing angle and the modulation index of its converter. The assumptions made in modeling are: (1) the superconducting coil resistance is zero because of heat dissipation; (2) it has a large inductance because of the high amount of energy storage; (3) the voltage drop in the converter is small; and (4) the harmonic power generated in the converter is also negligible. As shown in
and
The complete system model, written as:
{dot over (X)}=f[x,u], (12)
is extracted from the complex model of the PMSG 100 that includes the wind turbine, drive train, and the converter power electronics (including DC link capacitor 110, the inverters 104, the SMES 102, and grid side converter currents), where X=f[igd, igq, δ, ω, θz, ωt, Vc, iid, iiqIdcPSM, QSM] and u=f[Kpg, Kvg, Tpg, Tvg], where u shows the SMES controller parameters. For proper function of the SMES controller these parameters need to be adaptively tuned.
With respect to the improved particle swarm optimization (IPSO), each particle shows a candidate solution to the optimization problem. Each particle has its own direction and velocity in the search space. These movements of the particles are controlled by the best position in a search area and position a particle has visited. In this proposed improved particle swarm optimization, each particle updates its velocity and position by updating the inertia weight (w). Each particle modifies its velocity and position using the best solution among the particles achieved and gbest (global best) of neighborhood particles. It is the same instance in the social society where the better decisions could be made by the group of leaders. However, in standard PSO, only a gbest of neighborhood particles is employed. By contrast, this process uses some neighborhood particles that can be called ‘intensifying’ and ‘enhancing’ the social influence. Based on this technique, these particles should be intensified, which could lead individuals to better fitness.
For the evaluation of each particle, an eigenvalue-based objective function will be used. Initially, the population is generated stochastically and referred to as a search space.
The IPSO uses a population of N particles, which is the dimension of the search space. The position of the particle is represented as:
xi(k)=[xi1(k),xi2(k), . . . ,xiN(k)], (13)
where k is the iteration number. By adding velocity, the position of the particles is updated by the following equation:
xi(k+1)=xi(k)+vi(k). (14)
Each particle has its own search space area and search experience, depending on objective function calculation. In IPSO, mainly two algorithms work, the global best (gbest) and the local best (pbest). Their calculation is dependent on cognitive and social components. The ith particle velocity in IPSO is calculated as:
vi(k+1)=vi(k)+c1rand1(pi(k)−xi(k))+c2rand2(pg(k)−xi(k)). (15)
The operations rand1 and rand2 produce random values, which are uniformly distributed random numbers in the range [0, 1], c1 and c2 are the acceleration constant and pg (k) is the global best position it has visited. The local best state of the particles is written as:
pi(k)=[pi1(k),pi2(k), . . . ,piN(k)] (16)
The local best position can be updated as:
pi(k+1)=pi(k) if J(xi(k+1))≧J(pi(k)) (17)
pi(k+1)=xi(k+1) if J(xi(k+1))<J(pi(k)) (18)
The objective function J, which is to be minimized, can be calculated as:
and
where is the preselected value of damping ratio, σ and γ are the real and imaginary parts of the eigenvalues of the linearized 12×12 matrix of equation (9). The detailed 12×12 matrix components of equation (9) are listed in Table 1. The movement of the particles is predicted by the global best position. The global position in the entire swarm can be defined as:
pgbest(k)ε{pi1(k),pi2(k), . . . ,piN(k)}|J(pgbest(k))=min{pi1(k),pi2(k), . . . ,piN(k)}. (21)
The velocity of the particle in the local best is calculated as:
vi(k+1)=vi(k)+c1rand1(pi(k)−xi(k))+c2rand2(pilocal best(k)−xi(k)), (22)
where pilocal best is the local best position, and pilocal best can be defined as:
pilocal best(k+1)ε{Ni|J(pilocal best(k))=min{J(x)}}∀xεNi (23)
Exploration and exploitation of an algorithm need to be under consideration. Exploration is the ability of the algorithm to explore the entire search space. Exploitation is the ability of the algorithm to focus only on an optimum area to refine the solution. Inertia Weight plays a key role in the process of providing balance between exploration and exploitation process. The Inertia Weight determines the contribution rate of a particle's previous velocity to its velocity at the current time step. Selection of the suitable inertia weight enhances the performance and provides excellent results. The inertia weight W is shown in eqn. (24) as:
where itermax is the maximum number of iterations and iter is the current iteration number.
Improvement in the inertia weight helps to converge the objective function fast. The velocity equation for the gbest and local best with inertia weight can be written as:
vi(k+1)=wvi(k)+c1rand1(pi(k)−xi(k))+c2rand2(pg(k)−xi(k)), (25)
and
vi(k+1)=wvi(k)+c1rand1(pi(k)−xi(k))+c2rand2(pilocal best(k)−xi(k)). (26)
The major advantages of IPSO are its simplicity, lower computational complexity, and lower computational effort due to its fast convergence. Because of the fast convergence, IPSO can be used for generating training data for a neural network, optimization of a cost function, pattern recognition, scheduling assignment, and combination optimization. Steps of the IPSO algorithm flowchart 800 of
In the following example, the parameters in equations (14) and (15) were initialized. The cognitive and social acceleration constants c1 and c2 were set to 2. The random numbers rand1 and rand2 were initialized by using the “rand” function in MATLAB. A sample of 100 sets of SMES controller parameters have been generated and designated as the population of the parameters. The system information is loaded, and the eigenvalues are calculated for each set of the SMES controller parameters (Kpg, Kvg, Tpg and Tvg) from the population. From these eigenvalues, the objective function is calculated by using eqn. (19). A loop runs for 50 iterations, during which the optimized controller parameters are generated using new inertia weight, position and velocity values, based on equations (24) through (26). The updates are made to the gbest and pbest parameters based on the minimized value of the objective function of the particles. The example was implemented to find the global best within the iterations. The stop condition was user-defined upon consideration of the applied problem.
Generally, the stop condition could be in terms of optimized value or fixed iterations. In this scenario, the stop condition was considered to be a specific number of iterations. A set of 50 iterations provided considerably more stable predicted data than others. So, in this work, 50 iterations have been fixed. The value that satisfies the objective function from the values extracted during each iteration was selected as an optimized value. A similar procedure followed to calculate the predicted position parameter of all the particles. One such process of optimization for each of the particles is considered as one iteration. This process prepares the RBFNN training data, which is used by the RBFNN to train the network.
The three-layer RBFNN, shown in
where I is the input vector, β is the spread factor, and cj is the jth center. In the Gaussian function, output given by the neuron is maximum at the center and decreases when the neuron moves away from the center. A Gaussian function, such as Gaussian function 1000, is normally used for hidden neurons. If an input vector coincides with the centroid of the cluster, then the neuron representing that cluster will give the maximum output. As the distance of the input vector from the centroid of the cluster increases, the response of that cluster decreases. If the receptive fields of the neurons are overlapping, then all the neurons with overlapping fields will give output according to the distance of the vector from the cluster's centroid.
The hidden linear units 415 of the hidden layer 413 take a p-dimensional input vector Ip with unit connection weights and calculate the Euclidean distance between the input vector and the center. This result passes to a Gaussian function. The hidden layer 413 maps the input space onto a new space by performing the fixed nonlinear transformation. Then the output layer performs the linear combination onto this new space by adjusting the weight matrix. In this way, the RBFNN maps the p-dimensional input space to the m-dimensional output space. Equation (28) gives the output of the RBFNN and is calculated as the weighted sum of the hidden layer outputs, as follows:
where i=1, 2, 3, . . . , m; j=1, 2, 3, . . . , h; h shows the hidden units;
shows the Euclidean distance between input and the jth center; φ(•) is the nonlinear transfer function of the radial basis function; wji is the weight value between the ith center and jth output node.
With respect to training the network, using the RBFNN, the input vector (I) is directly connected to the single hidden layer 413 with h nodes. It can be observed that h is the key factor, not only for performance, but also the computational complexity of the network. For the hth hidden unit, ch (h=1, 2, 3, . . . , h) denotes the mean vector of the hth cluster. The vector ch is also known as the center vector or kernel vector. The hth hidden unit Euclidean net function for the pth training pattern can be calculated as:
where ch(n) is the nth element of ch corresponding to the nth input unit. The mean vector parameter ch and spread factor parameter β are conventional parameters of a RBFNN. The hidden layer 413 is fully connected to the output layer via output weights. So, the output will be calculated through eqn. (28). The training mean square error (Ep) for each pattern can be calculated as:
where Op is the output calculated by the IPSO method and y is the output calculated by the RBFNN, and both are column vectors.
The training data set consists of training patterns {Ip, op}. The input data (Ip) is achieved by taking the values of the generator current, generator angle, generator speed, DC-link capacitor voltage, the inverter current, generator power, and terminal voltage at different operating conditions, while the controller parameters (Kpg, Kvg, Tpg and Tvg) for a particular operating condition are saved into an output vector. The weights of the hidden layer are trained through the RBFNN algorithm. The training data of 800 sets are used in the training process.
In the RBFNN algorithm, the spread factor β is an important parameter with respect to the input space. The spread factor β determines the width of an area in the input space to which each neuron responds. If β is 0.1, then each RBFNN hidden layer neuron will respond with 0.5 or more to any input vectors within a vector distance of 0.1 from their weight vector, the maximum response output being equal to 1. In the present method, the spread factor β is set to be 0.1. The error goal is set to be 0.02. The RBFNN is trained till an error goal of 0.02 is reached. The algorithm takes the input vector and calculates the Euclidean distance by using eqn. (29). The RBFNN algorithm adds neurons into the hidden layer and maps the input space onto a new space by performing the nonlinear Gaussian function. After calculating the nonlinear function, the output layer performs the linear combination by adjusting the weight matrix. Based on the weight matrix, a mean square error (Ep) of each pattern is calculated through eqn. (30). If Ep is greater than the error goal, which is defined at the start of the algorithm, then add a neuron into the hidden layer and repeat the procedure from the Euclidean distance calculation. But on the other hand, if the Ep is meeting the error goal, then the algorithm will be terminated by saving the network, to be recalled during simulations. This network is called the RBFNN trained network.
The PMSG system given in
The training data for the radial basis function neural network (RBFNN) is generated using the improved particle swarm optimization (IPSO). The IPSO finds the optimum set of SMES controller parameters for a given initial condition. The algorithm begins with the generator current, generator angle, generator speed, DC-link capacitor voltage, the inverter current, generator power, and terminal voltage as input, and generates a population of size 100 by taking the random values of SMES controller parameters (Kpg, Kvg, Tpg and Tvg). The IPSO algorithm sets the minimum and maximum values of the SMES controller parameters as:
−30≦KPG≦30
−30≦KVG≦30
0.001≦TPG≦1
0.001≦TVG≦1. (31)
The IPSO tries to find the optimum values of the SMES controller parameters within the above ranges.
The SMES controller parameters were optimized using IPSO, which made use of an eigenvalue-based objective function to obtain the optimized parameters. The objective function to be minimized is equation (19). For a torque pulse of 20% for 0.3 sec, plot 1300 of
The eigenvalues of the system shown in
The results of the IPSO algorithm were used to train the radial basis function neural network (RBFNN). The input vector contains generator current, generator angle, generator speed, DC-link capacitor voltage, the inverter current, generator power, and terminal voltage, while the SMES controller parameters (Kpg, Kvg, Tpg and Tvg) are the outputs. In this learning process, a collection of desired input-output pairs are used for the RBFNN to learn. For the learning phase, 800 input-output data sets were obtained. For online tuning using the RBFNN, the centers and network weights are updated at each iteration. Initial centers, which have been generated randomly in the input domain, are updated based upon how far the current input vector is away from the last updated centers (Euclidean distance). After calculating the Euclidean distance, the nonlinear function (Gaussian function) is updated. The outputs of the hidden layer can be calculated by updating the weight matrix. The mean squared error (MSE) of the RBFNN is calculated using equation (30). The MSE is set to 0.02 in this work. The training process continues until the targeted error is met, as shown in plot 1400 of
The present adaptive SMES control method and system was tested through simulations of different disturbances on the PMSG system. The disturbances considered were torque pulses of various magnitudes and duration (input torque pulse of 20% for 0.3 sec; input torque pulse of 10% for 2 sec.), a low voltage condition on the grid simulated through symmetrical 3-phase fault, and wind gust. All performed satisfactorily. The Torque pulse results are shown in plot 1500 of
It is to be understood that the present invention is not limited to the embodiments described above, but encompasses any and all embodiments within the scope of the following claims.
Number | Name | Date | Kind |
---|---|---|---|
8275488 | Kim et al. | Sep 2012 | B2 |
8311863 | Kemp | Nov 2012 | B1 |
8626350 | Al-Hamouz et al. | Jan 2014 | B2 |
20040044442 | Bayoumi et al. | Mar 2004 | A1 |
20100268395 | Ingemann et al. | Oct 2010 | A1 |
20110257799 | Al-Hamouz et al. | Oct 2011 | A1 |
20110257800 | Al-Hamouz et al. | Oct 2011 | A1 |
20120217824 | Gupta et al. | Aug 2012 | A1 |
20120259477 | Abido et al. | Oct 2012 | A1 |
20130024042 | Asghari et al. | Jan 2013 | A1 |
20140113828 | Gilbert et al. | Apr 2014 | A1 |