Contenido principal

Vectorized Synchronous Machine GENROU

R2026b

Vectorized GENROU synchronous generator model

Since R2026b

  • Vectorized Synchronous Machine GENROU block

Libraries:
Simscape / Electrical / Electromechanical / Synchronous / Vectorized Synchronous Machines

Description

The Vectorized Synchronous Machine GENROU block models a GENROU synchronous generator that supports vectorized inputs and parameters and allows you to simulate multiple machines by using a single block.

To model a single GENROU synchronous machine, consider using the Synchronous Machine GENROU block instead.

GENROU synchronous generator models are widely used in power plant model verification and power system transient stability studies.

This diagram shows the equivalent circuit for the GENROU synchronous generator model.

Equivalent circuit for the GENROU synchronous generator model

Equations

The block expresses the synchronous machine equations with respect to a rotating reference frame,

θe(t)=Nθr(t),

where:

  • θe is the electrical angle.

  • N is the number of pole pairs.

  • θr is the rotor angle.

The Park transformation maps the synchronous machine equations to the rotating reference frame with respect to the electrical angle. This equation defines the Park transformation:

Ps=23[cosθecos(θe2π3)cos(θe+2π3)sinθesin(θe2π3)sin(θe+2π3)121212].

The block uses the Park transformation to define the per-unit synchronous machine equations. These equations define the d-axis and q-axis stator voltages:

vd=ωrψqRaid+ωrXdiqXdωbasediddtvq=ωrψqRaiqωrXdidXdωbasediqdt

In these equations:

  • ωr is the per-unit rotor rotational speed.

  • ωbase is the electrical base speed.

  • ψd=XdXdXdXlψd+XdXlXdXleq is the d-axis flux linkage behind the subtransient reactance X''d.

  • ψq=XqXqXqXlψq+XqXlXqXled is the q-axis flux linkage behind the subtransient reactance X''q.

  • ψ'd is the d-axis flux linkage behind the transient reactance X'd.

  • ψ'q is the q-axis flux linkage behind the transient reactance X'q.

  • Ra is the stator resistance.

  • id is the d-axis stator current.

  • iq is the q-axis stator current.

  • X'd is the d-axis transient reactance.

  • X''d is the d-axis subtransient reactance.

  • X'q is the q-axis transient reactance.

  • X''q is the q-axis subtransient reactance.

  • Xl is the stator leakage reactance.

  • e'd is the d-axis voltage behind the transient reactance.

  • e'q is the q-axis voltage behind the transient reactance.

These equations define the voltages behind the transient reactances:

dψddt=1Td0[eqψd(XdXl)id]dψqdt=1Tq0[edψq(XqXl)iq]deddt=1Tq0{[iqXqXq(XqXl)2(edψq+(XqXl)iq)](XqXq)+SXqXlXdXlψqed}deqdt=1Td0{Efd[id+XdXd(XdXl)2(eqψd+(XdXl)id)](XdXd)Sψdeq}

In these equations:

  • T'd0 is the d-axis transient open-circuit time constant.

  • T'q0 is the q-axis transient open-circuit time constant.

  • T''d0 is the d-axis subtransient open-circuit time constant.

  • T''q0 is the q-axis subtransient open-circuit time constant.

  • S=f(ψat)ψat is the saturation factor:

    • ψat=ψd2+ψq2 is the air-gap flux linkage.

    • If you set the Magnetic saturation representation parameter to None, then the saturation factor is equal to zero.

    • If you set the Magnetic saturation representation parameter to Quadratic, Scaled quadratic, or Exponential, then the block calculates the saturation factor function, f, using the values of the Saturation factor S10 and Saturation factor S12 parameters.

    • If you set the Magnetic saturation representation parameter to Open-circuit lookup table, then the block calculates the saturation factor function using the values of the Per-unit air-gap voltage saturation data, Vag and Non-reciprocal per-unit field current saturation data, Ifd parameters.

This equation defines the per-unit field current in a non-reciprocal per-unit system:

Ifd={id+XdXd(XdXl)2[eqψd(XdXl)id]}(XdXd)+Sψd+eq.

This equation defines the rotor torque:

Te=ψdiqψqid.

Plotting and Display Options

You can perform these plotting and display actions by clicking the button next to the associated parameter in the Utilities section:

  • Base values — Display the machine per-unit base values in the MATLAB® Command Window.

  • Associated initial conditions — Display associated initial conditions in the MATLAB Command Window.

  • Open-circuit saturation (pu) — Plot air-gap voltage, Vag, versus field current, ifd, both of which are per-unit measurements, in a MATLAB figure window. The plot contains an unsaturated and a saturated trace.

  • Saturation factor (pu) — Plot the saturation factor, f, versus magnetic flux linkage, ψat, both of which are per-unit measurements, in a MATLAB figure window using the machine parameters. If you set the Magnetic saturation representation parameter to Quadratic, Scaled quadratic, or Exponential, then the block derives the saturation factor function from the value of the Saturation factor, S10 and Saturation factor, S12 parameters.

    If you set the Magnetic saturation representation to Open-circuit lookup table, then the block derives the saturation factor function from the value of the Non-reciprocal per-unit field current saturation data, Ifd and Per-unit air-gap voltage saturation data, Vag parameters.

  • Power capability curves — Plot active power P versus reactive power Q, both of which are per-unit measurements, in a MATLAB figure window. The plot can contain multiple traces. Each trace corresponds to a maximum field circuit voltage measured per unit (non-reciprocal per-unit system). The plot shows the maximum reactive power that the generator produces when operating with a lagging power factor and the minimum reactive power that the generator absorbs when operating with a leading power factor.

Ports

Input

expand all

Per-unit field voltage, specified as a vector.

Per-unit mechanical power, specified as a vector.

Dependencies

To enable this port, in the Mechanical Parameters tab, set the Input type parameter to Power Pm (per unit).

Per-unit machine speed, specified as a vector.

Dependencies

To enable this port, in the Mechanical Parameters tab, set the Input type parameter to Speed Omega (per unit).

Three-phase voltages at the stator terminals, in volts, specified as a vector.

Output

expand all

Machine per-unit measurements, returned as a vector with these elements:

  • Stator terminal voltage, Vt

  • Stator terminal current, It

  • Rotor velocity, wr

  • Field current (field circuit base), Ifd

  • Electrical torque, Te

  • Real power, P

  • Reactive power, Q

  • Rotor electrical angle, thetae

To connect to this port, use the Synchronous Machine Measurement block.

Three-phase currents at the stator terminals, in ampere, returned as a vector.

Parameters

expand all

To edit block parameters interactively, use the Property Inspector. From the Simulink® Toolstrip, on the Simulation tab, in the Prepare gallery, select Property Inspector.

Main

Number of machines to model using a single block.

Rated apparent powers of each machine. The value of this parameter must be a vector of the same size as the value of the Number of machines parameter.

Root mean square (RMS) of the rated line-line voltages of each machine. The value of this parameter must be a vector of the same size as the value of the Number of machines parameter.

Nominal electrical frequencies at which the block quotes the rated apparent power of each machine. The value of this parameter must be a vector of the same size as the value of the Number of machines parameter.

Number of pole pairs in each machine. The value of this parameter must be a vector of the same size as the value of the Number of machines parameter.

Reference point for the rotor angle measurement.

  • Angle between the a-phase magnetic axis and the d-axis — The rotor d-axis and stator a-phase magnetic axis are aligned when the rotor angle is zero.

  • Angle between the a-phase magnetic axis and the q-axis — The rotor q-axis and stator a-phase magnetic axis are aligned when the rotor angle is zero.

Time between consecutive block executions. During execution, the block produces outputs and, if appropriate, updates its internal state. For more information, see What Is Sample Time? and Specify Sample Time.

For discrete-time operation, specify a positive scalar. For continuous-time operation, specify 0.

If this block is in a masked subsystem, or other variant subsystem that allows you to switch between continuous operation and discrete operation, promote the sample time parameter. Promoting the sample time parameter ensures correct switching between the continuous and discrete implementations of the block. For more information, see Promote Block Parameters to a Mask.

Impedances (per unit)

Resistances of the stator of each machine. The value of this parameter must be a vector of the same size as the value of the Number of machines parameter.

Leakage reactance of the stator of each machine. The value of this parameter must be a vector of the same size as the value of the Number of machines parameter.

Direct-axis synchronous reactance of each machine. The value of this parameter must be a vector of the same size as the value of the Number of machines parameter.

Quadrature-axis synchronous reactance of each machine. The value of this parameter must be a vector of the same size as the value of the Number of machines parameter.

Direct-axis transient reactance of each machine. The value of this parameter must be a vector of the same size as the value of the Number of machines parameter.

Quadrature-axis transient reactance of each machine. The value of this parameter must be a vector of the same size as the value of the Number of machines parameter.

Direct-axis subtransient reactance of each machine. The value of this parameter must be a vector of the same size as the value of the Number of machines parameter.

Quadrature-axis subtransient reactance of each machine. The value of this parameter must be a vector of the same size as the value of the Number of machines parameter.

Time Constants (s)

Direct-axis transient open-circuit time constant of each machine, in seconds. The value of this parameter must be a vector of the same size as the value of the Number of machines parameter.

Direct-axis subtransient open-circuit time constant of each machine, in seconds. The value of this parameter must be a vector of the same size as the value of the Number of machines parameter.

Quadrature-axis transient open-circuit time constant of each machine, in seconds. The value of this parameter must be a vector of the same size as the value of the Number of machines parameter.

Quadrature-axis subtransient open-circuit time constant of each machine, in seconds. The value of this parameter must be a vector of the same size as the value of the Number of machines parameter.

Saturation

Option to represent the magnetic saturation of the block:

  • None — The block does not model the magnetic saturation.

  • Quadratic — The block models the magnetic saturation by using a quadratic function.

  • Scaled quadratic — The block models the magnetic saturation by using a scaled function.

  • Exponential — The block models the magnetic saturation by using an exponential function.

  • Open-circuit lookup table — The block models the magnetic saturation by using per-unit non-reciprocal field current and per-unit air-gap voltage saturation data.

Saturation factor that corresponds to 1.0 per-unit terminal voltage. The value of this parameter must be less than the value of the Saturation factor, S12 parameter.

Dependencies

To enable this parameter, set Magnetic saturation representation to Quadratic, Scaled quadratic, or Exponential.

Saturation factor that corresponds to 1.2 per-unit terminal voltage. The value of this parameter must be greater than the value of the Saturation factor, S10 parameter.

Dependencies

To enable this parameter, set Magnetic saturation representation to Quadratic, Scaled quadratic, or Exponential.

Nonreciprocal field current, Ifd, data that populates the lookup table for air-gap voltage, Vag, versus field current. The value of this parameter must be a vector of at least five elements.

Dependencies

To enable this parameter, set Magnetic saturation representation to Open-circuit lookup table.

Air-gap voltage, Vag, data that populates the lookup table for air-gap voltage versus field current, ifd. The value of this parameter must be a vector of at least five elements.

Dependencies

To enable this parameter, set Magnetic saturation representation to Open-circuit lookup table.

Mechanical Parameters

Option to specify the type of the mechanical input:

  • Power Pm (per unit) — The block accepts the per-unit mechanical power as input. This value exposes the Pm port.

  • Speed Omega (per unit) — The block accepts the per-unit machine speed as input. This value exposes the Omega port.

Inertia constant of each machine, in seconds. The value of this parameter must be a vector of the same size as the value of the Number of machines parameter.

Dependencies

To enable this parameter, set Input type to Power Pm (per unit).

Per-unit damping coefficient of each machine. The value of this parameter must be a vector of the same size as the value of the Number of machines parameter.

Dependencies

To enable this parameter, set Input type to Power Pm (per unit).

Initial Conditions

Option to specify values for certain parameters and variables at the start of simulation:

  • Electrical power and voltage — Specify the magnitude and angle of the terminal voltages, and the active and reactive generated powers.

  • Mechanical and magnetic states — Specify the mechanical and magnetic states of each machine, such as the rotor electrical angle and frequency, the initial dq-axes voltages behind the transient reactances, the initial direct-quadrature (dq) axes currents, and the initial flux linkages behind the dq-axes transient reactances.

Magnitude of the terminal voltage of each machine, in volts. The value of this parameter must be a vector of the same size as the value of the Number of machines parameter.

Dependencies

To enable this parameter, set Specify initialization by to Electrical power and voltage.

Angle of the terminal voltage of each machine, in degrees. The value of this parameter must be a vector of the same size as the value of the Number of machines parameter.

Dependencies

To enable this parameter, set Specify initialization by to Electrical power and voltage.

Active power that each machine generates. The value of this parameter must be a vector of the same size as the value of the Number of machines parameter.

Dependencies

To enable this parameter, set Specify initialization by to Electrical power and voltage.

Reactive power that each machine generates. The value of this parameter must be a vector of the same size as the value of the Number of machines parameter.

Dependencies

To enable this parameter, set Specify initialization by to Electrical power and voltage.

Rotor electrical angle of each machine, in rad. The value of this parameter must be a vector of the same size as the value of the Number of machines parameter.

Dependencies

To enable this parameter, set Specify initialization by to Mechanical and magnetic states.

Rotor electrical frequency of each machine, in Hz. The value of this parameter must be a vector of the same size as the value of the Number of machines parameter.

Dependencies

To enable this parameter, set Specify initialization by to Mechanical and magnetic states.

Initial direct-axis flux linkage behind the transient reactance of each machine. The value of this parameter must be a vector of the same size as the value of the Number of machines parameter.

Dependencies

To enable this parameter, set Specify initialization by to Mechanical and magnetic states.

Initial quadrature-axis flux linkage behind the transient reactance of each machine. The value of this parameter must be a vector of the same size as the value of the Number of machines parameter.

Dependencies

To enable this parameter, set Specify initialization by to Mechanical and magnetic states.

Initial direct-axis voltage behind the transient reactance of each machine. The value of this parameter must be a vector of the same size as the value of the Number of machines parameter.

Dependencies

To enable this parameter, set Specify initialization by to Mechanical and magnetic states.

Initial quadrature-axis voltage behind the transient reactance of each machine. The value of this parameter must be a vector of the same size as the value of the Number of machines parameter.

Dependencies

To enable this parameter, set Specify initialization by to Mechanical and magnetic states.

Initial direct-axis stator current of each machine. The value of this parameter must be a vector of the same size as the value of the Number of machines parameter.

Dependencies

To enable this parameter, set Specify initialization by to Mechanical and magnetic states.

Initial quadrature-axis stator current of each machine. The value of this parameter must be a vector of the same size as the value of the Number of machines parameter.

Dependencies

To enable this parameter, set Specify initialization by to Mechanical and magnetic states.

Utilities

Choose the machine for which you want to display and plot specific values and conditions. The value of this parameter must be equal to or greater than 1 and equal to or less than the Number of machines parameter value.

Display the per-unit base values of the machine you specified in the Choose a machine parameter in the MATLAB Command Window.

Display the associated initial conditions of the machine you specified in the Choose a machine parameter in the MATLAB Command Window.

Plot the per-unit air-gap voltage, Vag, against the per-unit field current, ifd, of the machine you specified in the Choose a machine parameter in a MATLAB figure window.

Plot the per-unit saturation factor, f, against the per-unit magnetic flux linkage, ψat, of the machine you specified in the Choose a machine parameter in a MATLAB figure window.

Plot the per-unit active power P against the per-unit reactive power Q of the machine you specified in the Choose a machine parameter in a MATLAB figure window.

References

[1] Sauer, Peter W., and M. A. Pai. "Power System Dynamics and Stability". Prentice Hall, 1998.

Extended Capabilities

expand all

C/C++ Code Generation
Generate C and C++ code using Simulink® Coder™.

Version History

Introduced in R2026b