Linearization for analyzing closed loop eigenvalues with SimPowerSystems

12 views (last 30 days)
I need to use linearization to analyze the closed loop eigenvalues of a power system, including one or more inverters, one or more synchronous generators, loads and line impedances. Example papers I've looked at [1-2] describe how to linearize the controller and plant equations about an operating point, format them into Ax+Bu format, and calculate eigenvalues. I'd like to use Matlab's linearization techniques instead of linearizing by hand, but I'm having trouble using either the Simulink Control Design linearization tools, or linmod.
I'd like to construct the network with SimPowerSystems, so that I can simulate it and know that it is working as expected, then do the linearization with a simulation snapshot as the operating point.
All of the examples I've found for the Control Design toolbox require you to set io points, and thus appear to be for analyzing SISO systems (examples are for tuning a single controller). I saw in the help file for linearize() that the io point can be omitted in order to linearize the entire Simulink model, which I think is what I'm trying to do.
The power_analyze() function looks like it would also be useful, except that it only analyzes the electrical states, and thus neglects the dynamics of the controller(s).
Hopefully I've explained what I'm trying to do, and someone can give me guidance or examples on how to do it. Thanks!
References: [1] N. Pogaku, M. Prodanovic, and T. C. Green, "Modeling, analysis and testing of autonomous operation of an inverter-based microgrid," IEEE Trans. Power Electron., vol. 22, pp. 613-625, 2007. [2] F. Katiraei and M. R. Iravani, "Power management strategies for a microgrid with multiple distributed generation units," IEEE Trans. Power Sys., vol. 21, pp. 1821-1831, 2006.

Answers (2)

Arkadiy Turevskiy
Arkadiy Turevskiy on 27 Sep 2013
Simulink Control Design lets you linearize and analyze systems with arbitrary number of inputs and outputs. You are not limited to SISO systems.
Just set the IO linearization points at the needed inputs and outputs, and linearize the system.
  2 Comments
Andrew Paquette
Andrew Paquette on 1 Oct 2013
Thanks Arkadiy. I since figured out how to use the linearization tools. The challenge in this scenario is linearized small signal models need to work with dc quantities, so for ac power systems it's either necessary to use RMS simulations (commonly done in large power system analysis and can be done in SimPowerSystems), or analyze the system in the dq frame (rotating reference frame, such that AC quantities are transformed to dc). I ended up using the method in the papers referenced above to write all of the differential equations in dq, but instead of linearizing by hand, I wrote all of the differential equations in Simulink (in code, not block diagrams), and used an integrator block to solve them. I ran simulations to get the steady state operating point (and for error checking), then used the linmod command to extract the linearized model of the entire system.
I wanted to use a normal time-domain simulation in SimPowerSystems (using all of SimPowerSystems' built in models), then use MATLAB's linearization tools. Your suggestion made me think that it might work to I monitor all of the states, convert the measurements to dq, then specify those dq quantities as input and output variables for the linearization tools. Instead, I just wrote all of the dif-eq's out, and let MATLAB get the operating point and linearized model.
Dhanashri Changan
Dhanashri Changan on 15 Oct 2021
please sir, suggest me any document to refer, "how to linearize microgrid model simulation and on paper"

Sign in to comment.


qinghua zhang
qinghua zhang on 23 Nov 2022
but there no inputs and outputs . how to linearize?

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!