Analyze electric circuit
sps = power_analyze('sys','structure')
[A,B,C,D,x0,states,inputs,outputs,uss,xss,yss,frequencies,Hlin]
=...
power_analyze('sys')
sps = power_analyze('sys','sort')
sps = power_analyze('sys','ss')
power_analyze('sys','net')
SW = power_analyze('sys','getSwitchStatus')
sps = power_analyze('sys','setSwitchStatus',SW)
The power_analyze
command computes the equivalent state-space model of the
specified electrical model built with Simscape™
Electrical™ Specialized Power Systems software. It evaluates the A, B, C,
D standard matrices of the state-space system described by the
equations
where the state vector x represents the inductor currents and capacitor voltages, the input vector u represents the voltage and current sources, and the output vector y represents the voltage and current measurements of the model.
Nonlinear elements, such as the switch devices, motors and machines, are simulated by current sources driven by the voltages across the nonlinear element terminals. The nonlinear elements produces additional current source inputs to the u vector, and additional voltage measurements outputs to the y vector.
The Simulink® blocks of the model, as well as internal Simulink models of the Simscape Electrical Specialized Power Systems nonlinear elements are not represented in the state-space matrices.
The A, B, C, D matrices are computed for the particular circuit topology where all the switch devices, if any, are considered to be open status (that is, with infinite impedance).
power_analyze
also computes the Aswitch
, Bswitch
, Cswitch
,
and Dswitch
matrices for the circuit topology that
take into account the initial state (open/closed) of the Breaker and
Ideal Switch blocks present in the model. The initial state of power
electronic devices (Diodes, Thyristors, and so on) is considered to
be open, unless a nonzero initial current value is specified in the
mask of the device when Lon parameter is different from zero.
For a circuit that contains no switches, the Aswitch
, Bswitch
, Cswitch
,
and Dswitch
matrices have exactly the same values
as the A, B, C, D matrices.
In Simscape
Electrical Specialized Power Systems software, each state variable name begins
with a prefix Uc_
for capacitor voltages or
Il_
for inductor currents, followed by the name of the block
in which the element (C or L) is found.
A character vector is added to this prefix for blocks containing
more than one inductance or capacitor. For example, the Linear Transformer
block is represented with four state variables, one for each of the
three leakage inductances, defined with the prefixes Il_winding_
,
where x
:x
is the winding number of the transformer,
and one state for the magnetization inductance defined with the prefix Il_Lm:
.
Each input state variable name begins with a prefix U_
for
voltage sources or I_
for current sources, followed
by the name of the source block. Text can be added to the prefix for
blocks containing more than one source. For example, the Synchronous
Machine block produces two current inputs with prefixes I_A:
and I_B:
(phase
A and phase B machine currents).
Each output state variable name begins with a prefix U_
for
voltage outputs or I_
for current outputs, followed
by the name of the block that produces the output. Text can be added
to the prefix for blocks containing more than one output. For example,
the Synchronous Machine block produces two voltage outputs with prefixes U_AB:
and U_BC:
(two
machine phase-to-phase voltages).
The following conventions are used for inputs:
Source current flowing in the arrow direction is positive.
Positive source voltage is indicated by a + sign on the icon.
The sign conventions used for voltages and currents of state variables and measurement outputs are described in Measuring Voltages and Currents. See also Sign Conventions for Voltages and Currents for current directions and voltage polarities.
sps = power_analyze('sys','structure')
creates
a structure array sps
with fields and values describing
the model sys
.
The fields of the structure array are defined in the following order.
Field | Description |
---|---|
| Name of the model |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1-by- |
|
|
| Vector of initial conditions of dependent states |
|
|
| Discrete state-space A matrix. Returns an empty value when the Powergui is in continuous or in phasor mode. |
| Discrete state-space B matrix. Returns an empty value when the Powergui is in continuous or in phasor mode. |
| Discrete state-space C matrix. Returns an empty value when the Powergui is in continuous or in phasor mode. |
| Discrete state-space D matrix. Returns an empty value when the Powergui is in continuous or in phasor mode. |
| Vector of discrete initial conditions. Returns an empty value when the Powergui is in continuous or in phasor mode. |
| Sample time value used to compute discrete state-space matrices |
| A matrix taking into account the initial status of switch devices |
| B matrix taking into account the initial status of switch devices |
| C matrix taking into account the initial status of switch devices |
| D matrix taking into account the initial status of switch devices |
| Vector of initial values of switch currents |
|
|
| Display the oscillatory modes of the state-space system |
The table uses the following conventions:
nstates
is the number of states.
ninput
is the number of inputs.
noutput
is the number of outputs.
nfreq
is the number of input source
frequencies.
[A,B,C,D,x0,states,inputs,outputs,uss,xss,yss,frequencies,Hlin]
=...
returns the state-space
calculations in separate variables.
power_analyze('sys')
sps = power_analyze('sys','sort')
returns a structure array
sps
with the following fields related to the interconnection of
Simscape
Electrical Specialized Power Systems blocks in a model. The fields are defined in the
following order.
Field | Description |
---|---|
| Name of the model |
| Sample time for discrete systems |
|
|
| List of blocks containing the state variable |
| Source matrix in the |
| Names of the blocks defined as sources |
| Names of the inputs of the system |
| Names of the outputs of the system |
| Output expression in the
|
| Output expression in matrix format (internal) |
| Names of the voltage and current measurement blocks |
sps = power_analyze('sys','ss')
creates
a continuous state-space model of the model sys
with
matrices A, B, C, D. You must have Control System Toolbox™ software
installed for this option. The output is a state-space object.
power_analyze('sys','net')
generates a netlist stored in a file,
sys.net
. The file contains the node numbers automatically
generated by power_analyze
, as well as parameter values of all linear
elements. See the formats described in the power_statespace
reference page.
SW = power_analyze('sys','getSwitchStatus')
returns
a structure array with switch names and their initial status. You
can use the SW
structure to specify switch statuses
for a particular circuit topology and to compute the corresponding
state-space matrices using the command sps = power_analyze('sys','setSwitchStatus',SW)
.
The SW
structure contains the following fields.
Field | Description |
---|---|
| Names of the switches of the system |
| Vector of initial states of switches |
sps = power_analyze('sys','setSwitchStatus',SW)
creates
a structure array sps
with fields and values describing
the state-space matrices of model sys
for the switch
status defined in SW
. Use the command
to
obtain the
SW = power_analyze('sys','getSwitchStatus')SW
structure array.
Field | Description |
---|---|
|
|
|
|
|
|
|
|
|
|
Obtain the state-space
matrices and steady-state voltages and currents for the power_netsim2
circuit.
The command
sps = power_analyze('power_netsim2','structure');
returns the state-space model in the sps
structure
variable.
sps.A = 1.0e+04 * 0 6.2500 -0.0083 -1.4250 sps.uss = 0 1000
sps.xss = 1.0e+02 * 4.8392 - 5.1314i 0.0310 + 0.0292i sps.yss = 1.0e+02 * 8.5535 - 1.6287i 0 sps.inputs = I_Breaker U_Source sps.outputs = U_Breaker I_Current Measurement
The inductor current of the 51-ohm, 12-mH block and the capacitor voltage of the 120-ohm, 16-µF block are the two state variables in this circuit. The Breaker block is a nonlinear element that is represented by a current source (the first input) driven by the voltage across its terminals (the first output).