Models
Models
Models
5
Models
Standard Models in PSS SINCAL Platform
Herausgegeben von
Siemens AG
Smart Infrastructure
Grid Software
Humboldtstrasse 59
90459 Nuremberg, Germany
SIEMENS PSS SINCAL Models
Preface
Preface
The PSS SINCAL manuals can be divided into the following parts:
The PSS SINCAL System Manual contains a general description for using the application.
The technical manuals for Electrical Networks contain detailed descriptions of the various
calculation methods for electrical networks - such as power flow, or short circuit calculations - and
their input data.
The technical manuals for Pipe Networks contain detailed descriptions of the various calculation
methods for pipe networks - water, gas and heating/cooling - and their input data.
The manuals with the Examples for electrical and pipe networks contain detailed information on the
use of the various calculation modules based on the provided sample networks.
The Database Description contains a complete description of the data models for electrical and
pipe networks. Furthermore, documentation on the Time Series Data Interface is also available, as
well as a description of the additional data files and external result data.
The Automation manual contains the documentation of the automation functions for PSS SINCAL.
Copyright
This manual and all the information and illustrations contained in it are copyrighted.
SIEMENS retains all rights, in particular the right to publish, translate, reprint, photocopy, make
microcopies or electronically store in a database.
Previously expressed written permission from SIEMENS is required for any reproduction or use
beyond the limits specified by copyright law.
Warranty
Even though our manuals are thoroughly checked for errors, no liability can be taken for errors found
or any resulting problems or difficulties. Modifications are frequently made to the text and the software
as a part of our routine updates.
1. Introduction to Models 1
2. Inherent Models 2
2.1 VarElem 3
2.2 ExtendedImpload 4
2.3 I_LOAD 5
2.4 SVC 5
2.5 DCS_LINE 6
2.6 DCS_LINE_CSC 6
2.7 DCS_LINE_VSC 7
2.8 DCInfeeder 7
2.9 DCInfeederU 8
2.10 ASM_1 8
2.11 ASM_2 9
2.12 ASM_4 9
2.13 ASM_DFIG 9
3. Generic Models 10
3.1 GNE-P/Q 10
3.2 GNE-Y 12
3.3 GNE-I 14
3.4 GNE-V 15
3.5 GNE-Y4 16
April 2024
PSS SINCAL Models SIEMENS
Table of Contents
4.9 BUDCZT 32
4.10 COMP 33
4.11 DC3A 34
4.12 DEGOV 35
4.13 DEGOV1 35
4.14 ESAC4A 36
4.15 EXAC1 37
4.16 EXAC1A 39
4.17 EXAC2 40
4.18 EXAC4 41
4.19 EXBAS 42
4.20 ExcBBC 43
4.21 ExcCZ 44
4.22 ExcDC3A1 45
4.23 ExcHU 47
4.24 ExcSCRX 48
4.25 ExcST1A 49
4.26 ExcST2A 50
4.27 ExcST3A 51
4.28 ExcST4B 53
4.29 ExcST6B 54
4.30 ExcST7B 55
4.31 EXST1 57
4.32 EXST2 58
4.33 EXST2A 59
4.34 EXST3 60
4.35 GAST 62
4.36 GASTD 63
4.37 GovHydroPID2 64
4.38 GovSteam1 66
4.39 GovSteam2 68
4.40 GovSteamEU 69
4.41 HYGOV 71
April 2024
SIEMENS PSS SINCAL Models
Table of Contents
4.42 HYGOVD 72
4.43 IEEEG1 74
4.44 IEEEG1D 75
4.45 IEEEG1M 76
4.46 IEEEG2 77
4.47 IEEEG3 78
4.48 IEEET1 79
4.49 IEEET2 80
4.50 IEESGO 81
4.51 IEESGOD 82
4.52 IVOEX 84
4.53 IVOGO 85
4.54 OverexcLim2 86
4.55 PSS3C 87
4.56 PSS6C 88
4.57 PssELIN2 90
4.58 PssWECC 91
4.59 PssWSCC 92
4.60 SCRX 94
4.61 SEXS 95
4.62 STAB1 95
4.63 STAB2A 96
4.64 TGOV1 97
4.65 TGOV1DU 98
4.66 TGOV2 98
4.67 UnderexcLimX1 99
4.68 URGS3T 100
April 2024
PSS SINCAL Models SIEMENS
Table of Contents
April 2024
SIEMENS PSS SINCAL Models
Introduction to Models
1. Introduction to Models
This help section describes the dynamic models, provided by the standard model library of
PSS SINCAL/PSS NETOMAC. This includes:
The models are each linked to their appropriate help description in both tools PSS SINCAL and
PSS NETOMAC.
April 2024 1
PSS SINCAL Models SIEMENS
Inherent Models
2. Inherent Models
Calculating stability in PSS SINCAL without an assignment of dynamic models for specific network
elements, inherent models are partially used by default in order to represent a basic dynamic
behavior of the elements. This model behavior is not internally integrated into the code and is
described in the following.
● VarElem
● ExtendedImpload
● I_LOAD
● SVC
● DCS_LINE
● DCS_LINE_CSC
● DCS_LINE_VSC
● DCinfeeder
● DCInfeederU
● ASM_1
● ASM_2
● ASM_4
● ASM_DFIG
The integration of such an inherent model for the calculation with the PSS NETOMAC engine can be
investigated by the user, if needed.
The following parameters are automatically generated as local variables for every macro:
Furthermore, the default parameters internally defined in the macros are adapted by the element
variables prior to the macro calls. The available element variables are listed in the section Dynamics
in the documentation of the input data for each element (see the sections within the chapter Data
Descriptions within the Input Data Manual).
2 April 2024
SIEMENS PSS SINCAL Models
Inherent Models
2.1 VarElem
This model is used in order to represent a variable shunt element in stability calculation, if the options
Mixed power or Function are selected for Power Flow Input in the Basic Data.
Parameters
Model Behavior
The element power is determined by a terminal voltage dependent manipulation of the defined initial
values using factors and exponents. The model does not have a time dependent behavior.
The default parameters (exponents) are set in such a way for the option Mixed power that the
following equation becomes effective:
The remaining parameters are directly transferred from PSS SINCAL Input Data of the Element to
the model macro.
Unused parameters are not entered in the NET file prior to the macro call in order to remain the
calculation performance. In that case, the default parameters defined within the macro are used.
April 2024 3
PSS SINCAL Models SIEMENS
Inherent Models
Option Function
All parameters are directly inserted in the equation from PSS SINCAL Input Data of the Element for
the option Function.
2.2 ExtendedImpload
This model is used in order to represent a variable shunt element in stability calculation, if the option
Power – P and Q scaled is selected for Power Flow Input in the Basic Data.
It is also used in order to represent a load in stability calculation, if the option P and Q scaled is
selected for Power Flow Type in the Basic Data.
Parameters
Model Behavior
This model determines the actual element power by manipulation of the defined initial power values
Plf and Qlf depending on terminal voltage v and the voltage limit #Umin. The value for this parameter
#Umin is obtained from the field Voltage Limit Load Reduction in the Power Flow – Calculation
Settings in PSS SINCAL.
6#𝑈𝑚𝑖𝑛 + 4 4#𝑈𝑚𝑖𝑛 + 3
𝑣 (√𝑣 ( 3 −𝑣 ) + 1 − 1) , 𝑣 < #𝑈𝑚𝑖𝑛
𝑓= #𝑈𝑚𝑖𝑛 #𝑈𝑚𝑖𝑛 4
{ 1 , 𝑜𝑡ℎ𝑒𝑟𝑤𝑖𝑠𝑒
𝑃𝑡𝑜𝑡 = 𝑃𝑙𝑓 𝑓
𝑄𝑡𝑜𝑡 = 𝑄𝑙𝑓 𝑓
If this model is manually assigned to an element, then the default parameter value of #Umin from the
macro file is used in the equation. Hence, no local parameter #Umin is defined in the NET file. This
discrepancy can be solved by a disclosure of the hidden parameter #Umin, changing "!!" to "!" at the
appropriate comment line in the macro file. Alternatively, the global parameter in the settings can be
adapted.
4 April 2024
SIEMENS PSS SINCAL Models
Inherent Models
2.3 I_LOAD
This model is used in order to represent a variable shunt element in stability calculation, if the option
Power – I constant is selected for Power Flow Input in the Basic Data.
It is also used in order to represent a load in stability and electromagnetic transients calculation, if
the option I constant is selected for Power Flow Type in the Basic Data.
Parameters
Besides the automatically generated parameters defined in the main chapter Inherent Models there
are no additional parameters used.
Model Behavior
The following equation describes the model behavior depending on terminal voltage v:
𝑃𝑡𝑜𝑡 = 𝑃𝑙𝑓 𝑣
𝑄𝑡𝑜𝑡 = 𝑄𝑙𝑓 𝑣
The power is calculated using the initial values and a linear dependency on the terminal voltage. The
model does not have a time dependent behavior.
2.4 SVC
This model is used in order to represent a static compensator element in stability calculation
retaining the same element behavior as within power flow calculations.
Parameters
April 2024 5
PSS SINCAL Models SIEMENS
Inherent Models
For #Qref the value Sn is used which is entered by user in PSS SINCAL.
Model Behavior
umax
Uref Sl
Sl
umin
Qc Qc Qi Qi
2.5 DCS_LINE
This model is used in order to represent a Serial DC Element with the converter type PSS E in
stability calculation retaining the same element behavior as within power flow calculations.
The functionality is in accordance with the PSS SINCAL power flow model according to chapter Basic
Data – Serial DC Element in the Input Data Manual.
2.6 DCS_LINE_CSC
This model is used in order to represent a Serial DC Element with the converter type CSC in stability
calculation retaining the same element behavior as within power flow calculations.
6 April 2024
SIEMENS PSS SINCAL Models
Inherent Models
The functionality is in accordance with the PSS SINCAL power flow model according to chapter Basic
Data – Serial DC Element in the Input Data Manual.
2.7 DCS_LINE_VSC
This model is used in order to represent a Serial DC Element with the converter type VSC in stability
calculation retaining the same element behavior as within power flow calculations.
The functionality is in accordance with the PSS SINCAL power flow model according to section Basic
Data – Serial DC Element in the Input Data Manual.
2.8 DCInfeeder
This model is used in order to represent a symmetrical three-phase Converter element for DC Input
options P and Q as well as P and cosφ in the stability calculation.
Parameters
Model Behavior
The model includes a voltage dependent and phase conformal current injection in the positive
sequence aiming a constant active and reactive power of the element.
𝑃lf − j𝑄lf
𝐼=
𝑈∗
April 2024 7
PSS SINCAL Models SIEMENS
Inherent Models
2.9 DCInfeederU
This model is used in order to represent an unbalanced Converter element for DC Input options P
and Q as well as P and cosφ in the stability calculation. The element connection phase has to be
defined as "L1|L2|L3|L123". A two-phase connection as "L12" is not supported by this model version.
Parameters
Hint: The parameters referring to power are multiplied by 3 in the NET file, so that the correct injection
phase can be defined in the Basic Data dialog box.
Model Behavior
The model includes a voltage dependent and phase conformal current injection in the defined phase
aiming a constant active and reactive power of the unbalanced element.
𝑃lf − j𝑄lf
𝐼=
𝑈∗
2.10 ASM_1
This model is utilized for the application of the same asynchronous machine model in PSS SINCAL
power flow calculation as it is used in the stability calculation. This case becomes active with the
selection of the option Park (PF) within Dynamics input data of Asynchronous Machines.
For the utilized equivalent circuit see chapter Dynamics – Asynchronous Machine in the Input Data
Manual.
8 April 2024
SIEMENS PSS SINCAL Models
Inherent Models
2.11 ASM_2
This model is utilized for the application of the same asynchronous machine model in PSS SINCAL
power flow calculation as it is used in the stability calculation. This case becomes active with the
selection of the option Equivalent norm. (PF) within Dynamics input data of Asynchronous
Machines.
For the utilized equivalent circuit see chapter Dynamics – Asynchronous Machine in the Input Data
Manual.
2.12 ASM_4
This model is utilized for the application of the same asynchronous machine model in PSS SINCAL
power flow calculation as it is used in the stability calculation. This case becomes active with the
selection of the option Equivalent opt. (PF) within Dynamics input data of Asynchronous Machines.
For the utilized equivalent circuit see chapter Dynamics – Asynchronous Machine in the Input Data
Manual.
2.13 ASM_DFIG
This model is utilized for the application of the same asynchronous machine model in PSS SINCAL
power flow calculation as it is used in the stability calculation. This case becomes active with the
selection of the option DFIG (PF) within Dynamics input data of Asynchronous Machines.
For the utilized equivalent circuit see chapter Dynamics – Asynchronous Machine in the Input Data
Manual.
April 2024 9
PSS SINCAL Models SIEMENS
Generic Models
3. Generic Models
The standard model library contains simple generic models for three-phase node and branch
elements of type GNE (Generic Network Element). They can be utilized as "Operating State Model"
for network elements for different stationary (PF/LP) or dynamic (ST/EMT) calculations within the
PSS SINCAL Platform. They imply general functionalities and serve as examples and starting point
for users for sophisticated models which are able to represent the real behavior of assets.
Additionally, it is possible to derive one-phase models (VAR- and SOURCE-types) from these which
can be used for unbalanced calculations.
The generic model presented in the following sections exemplarily address the functionalities of
generation units, loads, storages and compensation. But, the presented usage of the model types is
not restricted to these cases and can be extended for different application purposes. The following
models of the standard model library are described in this section:
● GNE-P/Q:
three-phase variable load model
● GNE-Y:
three-phase variable admittance model
● GNE-I:
three-phase variable current source model
● GNE-V:
three-phase variable voltage source model
● GNE-Y4
three-phase variable serial admittance model
3.1 GNE-P/Q
The generic model GNE-PQ.xmac represents a three-phase static load model for time-domain
simulation. It implies an exponential voltage dependency as well as a linear frequency dependency.
The dependencies are related to the initial power demand and initial values for voltage and
frequency. The terminal values of the load model are directly used for both signals. The voltage and
frequency dependent power demand of the load model results from the following two equations
utilizing the initial and current values as well as parameters:
10 April 2024
SIEMENS PSS SINCAL Models
Generic Models
April 2024 11
PSS SINCAL Models SIEMENS
Generic Models
The parameters #kPV3 and #kQV3 are automatically calculated by specification of #kPV1, #kPV2,
#kQV1 and #kQV2 in the macro section [Equations]:
For a terminal voltage Vt below the defined value #VMIN the load model will be completely
disconnected from the grid model. Above this limit value the load behavior is according to the
presented equation.
3.2 GNE-Y
The generic model GNE-Y.xmac represents a three-phase variable admittance model for time-
domain simulation. It implies an exponential voltage dependency as well as a linear frequency
dependency. The dependencies are related to the initial power demand and initial values for voltage
and frequency. The terminal values of the load model are directly used for both signals. The voltage
and frequency dependent power demand of the load model results from the following two equations
utilizing the initial and current values as well as parameters:
12 April 2024
SIEMENS PSS SINCAL Models
Generic Models
The parameters #kPV3 and #kQV3 are automatically calculated by specification of #kPV1, #kPV2,
#kQV1 and #kQV2 in the macro section [Equations]:
April 2024 13
PSS SINCAL Models SIEMENS
Generic Models
3.3 GNE-I
The generic model GNE-I.xmac represents a three-phase current injection for a given operating
point of active and reactive power. It injects a symmetrical and phase conformal current for a given
terminal voltage. Additionally, the model provides a dynamic voltage and frequency support each
with a symmetrical dead-band around the initial or reference value employing modifiable gains. An
active current limitation function prioritizes the reactive current against the active current utilizing the
maximum converter current value. The block diagram of the model is shown in the following figure:
The rated apparent power of the model #Srat, which is used for normalization, is determined by the
parameters #Sn, #Plf and #Qlf in model equations:
IF(#Sn.GT.0)THEN
#Pref = #Plf/#Sn ! Active power set-point [pu]
#Qref = #Qlf/#Sn ! Reactive power set-point [pu]
14 April 2024
SIEMENS PSS SINCAL Models
Generic Models
#Srat = #Sn
ELSE
IF(#Plf.NE.0)THEN ! #Plf rated if Sn = 0
#Pref = #Plf/ABS(#Plf)
#Qref = #Qlf/ABS(#Plf)
#Srat = ABS(#Plf)
ELSE
IF(#Qlf.NE.0)THEN ! #Qlf rated if Sn = 0 and #Plf = 0
#Pref = 0
#Qref = #Qlf/ABS(#Qlf)
#Srat = ABS(#Qlf)
ELSE ! Zero output if no rating possible
#Pref = 0
#Qref = 0
#Srat = 1
ENDIF
ENDIF
ENDIF
The rated and initial values are provided by Basic Data tab if the model is used in PSS SINCAL.
Using the model in PSS NETOMAC, these values have to be defined prior to the macro call, e.g.:
@ #Plf = 1 ! Active power set-point [MW]
@ #Qlf = 1 ! Reactive power set-point [MVar]
@ #Sn = 1 ! Rated apparent power of network element [MVA]
The initialization values in the model, #Pref and #Qref, are normalized by means of #Srat as shown
above. These reference values for active and reactive power are subsequentially limited by input
data for Pmin, Pmax, Qmin and Qmax, if provided by user, in the tab Limits in PSS SINCAL:
#Pmx = #Pmax/#Srat
#Pmn = #Pmin/#Srat
#Qmx = #Qmax/#Srat
#Qmn = #Qmin/#Srat
In PSS NETOMAC these parameters, if needed for the model usage, have to be defined prior to the
model call.
3.4 GNE-V
April 2024 15
PSS SINCAL Models SIEMENS
Generic Models
The generic model GNE-V.xmac represents a three-phase voltage source, which can be used to
force a pre-defined voltage profile for a branch in a grid model. After specifying the voltage-time and
frequency-time functions the space vectors are appropriately determined. The block diagram of the
model is shown in the following figure:
As transfer values from the input mask of the variable shunt element the macro gets the parameters
#Ulf for the initial amplitude and #phi for the initial angle. The integrator d will be initialized by the
angle #phi in radiant. Depending on the #mode the output values are held constant (0) or are varied
(1) according to the initial and the defined voltage values as multiplication factors or rather the
frequency in Hz.
3.5 GNE-Y4
16 April 2024
SIEMENS PSS SINCAL Models
Generic Models
The generic model GNE-Y4.xmac creates a 2x2 admittance matrix defining real and imaginary parts
of the matrix elements. The model is especially designed for the application in PSS E and is provided
with PSS SINCAL Platform per default. It can be used within the combination of the Graphical Model
Builder (GMB) and PSS E. The block diagram of the model is shown in the following figure:
April 2024 17
PSS SINCAL Models SIEMENS
Machine Controller Models
This section contains the descriptions of the mostly standardized models of machine controllers,
which are delivered with PSS SINCAL platform. In practice commonly used models are documented
in the following. Until finalization of this section, you can additionally consult the model description
documents of PSS E as well as the descriptions of the IEC and IEEE reference:
The documents contain comprehensive model descriptions for machine controllers from different
sources, standards, reports and guidelines:
The actual model implementation in the program may slightly differ from the descriptions due to
modelling restrictions. This will be mentioned at the relevant points. The models according to CIM
CGMES partly contain the additional parameters for reference steps with the suffix "step" and the
appropriate implementation.
The scope of the machine controller models is usually limited to the stability/RMS (ST) calculation
by the according standard. There is no release for an official use of these within calculation of
electromagnetic transients (EMT) or eigenvalue analysis (EVA). For these calculation types
modifications of the standard models would be needed.
In general, all developed machine controller models are tested with regard to functionality and
accuracy in the software products PSS SINCAL, PSS NETOMAC and PSS E (utilizing BOSL-API)
prior to the delivery. Please ensure before implementing the model, that the chosen PSS product
accesses the official delivered standard model library in the installation path.
In chapter Linking Machine Controller Models it is generally described how to link the machine
controller models to the machine models in different PSS products.
The following models are documented in this chapter. Furthermore, the model library contains more
models, which will be documented in the next versions.
Excitation System:
● AC1C
● AC2C
● AC4C
● AC7B
● AC8B
18 April 2024
SIEMENS PSS SINCAL Models
Machine Controller Models
● BBSEX1
● BUDCZT
● DC3A
● ESAC4A
● EXAC1
● EXAC1A
● EXAC2
● EXAC4
● EXBAS
● ExcBBC
● ExcCZ
● ExcDC3A1
● ExcHU
● ExcSCRX
● ExcST1A
● ExcST2A
● ExcST3A
● ExcST4B
● ExcST6B
● ExcST7B
● EXST1
● EXST2
● EXST2A
● EXST3
● IEEET1
● IEEET2
● IVOEX
● SCRX
● SEXS
Compensator:
● COMP
● PSS3C
● PSS6C
● PssELIN2
● PssWECC
● PssWSCC
● STAB1
● STAB2A
Underexcitation limiter:
● UnderexcLimX1
April 2024 19
PSS SINCAL Models SIEMENS
Machine Controller Models
Overexcitation limiter:
● OverexcLim2
Governor:
● BBGOV1
● DEGOV
● DEGOV1
● GAST
● GASTD
● GovHydroPID2
● GovSteam1
● GovSteam2
● GovSteamEU
● HYGOV
● HYGOVD
● IEEEG1
● IEEEG1D
● IEEEG1M
● IEEEG2
● IEEEG3
● IEESGO
● IEESGOD
● IVOGO
● TGOV1
● TGOV1DU
● TGOV2
● URGS3T
PSS SINCAL
Linking and parametrizing of the models can be done using the data screen form of the appropriate
node element Synchronous Machine in the tab Dynamics 2. Prerequisite for this is an activated
method Dynamics in the Calculation Settings dialog box (Calculate – Methods menu).
In the data screen form you can assign different model types to the model container of the
synchronous machine model. You can find an overview of the model interfaces in the Input Data
Manual, chapter Dynamics Synchronous Machine. You can choose the described models from the
list of the global location.
After that, it is possible to change the parameters, diverging from the default ones in the model, in
the Parameter tab.
20 April 2024
SIEMENS PSS SINCAL Models
Machine Controller Models
If you are going to use this model more than once in your network model, then it is advisable to link
and name the model via the Network Browser – Models – New menu in order to simplify handling
of models for different node elements. Afterwards, it is possible to assign the model to one or more
node elements. If the model is assigned to more than one node element, parameter changes will
apply to all of them if they have linked the same model.
PSS NETOMAC
By setting a local parameter #NAME with an appropriate name of a synchronous machine model ID
it is possible to link the models to the appropriate model container. The definition is done within the
part "Controller Data in Integration Section" or ##8.2 or [[models]]. If you use a multiple input multiple
output (MIMO) frame based models, some key parameters (e.g. in #NAME1 or #NAME2) may be
added in order to assign the multiple outputs to different node elements.
From the default values diverging values may be set by local parameter definitions. The finalizing
macro call with the #-prefix links the model with the network:
$1......12......23......3AA1....12....23....34....45....56....67...78...89...9ZZ
@ #NAME = 'ID' ! Machine ID for link
@ #PAR1 = Value ! Description of parameter #PAR1
@ #PAR2 = Value ! Description of parameter #PAR2
$ ... parameter definition, if divergent from default values
@ #PARn = Value ! Description of parameter #PARn
#.\Modelname.xmac ! File name and path relatively to project or absolutely
In order to reduce the effort at writing the parameter list, it is possible to use the pop-up menu Insert
Model after right-clicking at the cursor position in the source editor. By this function all predefined
parameters will be automatically written before the macro call.
Furthermore, it is advisable to build a sequence of macro calls such, that auxiliary device models as
compensators, power system stabilizers or limiters are called before main device models as exciters
or governors.
PSS E
The first precondition for usage of the models in PSS E is loading the appropriate DLLs:
You can check the successful loading as well as the used version under Help – Loaded Libraries.
In general, the currently registered version of PSS SINCAL Platform is used.
The second precondition is the definition of model paths, in which the program searches for the
models. You can set these under Dynamics – Model Library – Define model search path. It is
recommended to insert the global model library as well as the execution paths here.
The linking of the machine controller models on the one hand can be realized using the graphical
user interface. Therefore, you have to change to the tab Dynamic Data – Machine after loading a
case with dynamic data. The tab will be automatically opened after loading dynamic data (e.g. by dyr
file). In the appropriate columns you can choose and assign the model via the right-click pop-up
menu at the appropriate machine by the option Add/Replace Model and subsequently clicking on
GMB Models. Going down from that entry (by cursor or arrow-down key), the Parameter dialog box
will be opened and can be set according to the requirements.
April 2024 21
PSS SINCAL Models SIEMENS
Machine Controller Models
Alternatively, the model link to a machine model at NODE and a machine ID as well as the
parameters (separated by blanks) can be directly defined within the dyr file, e.g.:
'USRMBL' 'Modelname.XMAC' NODE ID
Value of #PAR1 Value of #PAR2 … Value of #PARn /
As a standard constant, the last entry in the record of a GMB model defines the parameter #DEBUG
which can be used within the model for debugging options. Additionally, if the model utilizes remote
nodes or branches, some ICON may be defined in the data screen form or in the dyr file after ID.
4.2 AC1C
The model AC1C represents field-controlled alternator excitation systems. It considers an alternator
main exciter implying a non-controlled rectifier. It does not consider self-excitation and the source of
the voltage regulator. The block diagram of the model is shown in the following figure.
The switch blocks after the limiter inputs (UEL, OEL, SCL) are intended to switch between options a
and b according to the standard:
The rectifier regulation in the excitation system is considered by the block FEX according to the
standard:
𝐼𝐹𝐷
𝐼𝑁 = 𝐾𝐶
𝑉𝐸
22 April 2024
SIEMENS PSS SINCAL Models
Machine Controller Models
1 − 0.577𝐼N 𝐼N ≤ 0.433
√0.75 − 𝐼 2 0.433 < 𝐼N < 0.75
𝐹EX = N |
1.732(1 − 𝐼N ) 0.75 ≤ 𝐼N ≤ 1
{ 0 𝐼N > 1
The model AC1C requires the following parameters for a proper parameterization of the function
blocks:
Linking of the model AC1C to a chosen synchronous machine model in the different PSS products
is generally described in Linking Machine Controller Models chapter.
4.3 AC2C
April 2024 23
PSS SINCAL Models SIEMENS
Machine Controller Models
The model AC2C represents high initial response field-controlled alternator excitation systems. It
considers an alternator main exciter implying a non-controlled rectifier. The model is similar to AC1C
except for exciter time constant compensation and exciter field current limiter. The block diagram of
the model is shown in the following figure.
The switch blocks after the limiter inputs (UEL, OEL, SCL) are intended to switch between options a
and b according to the standard:
The rectifier regulation in the excitation system is considered by the block FEX according to the
standard:
𝐼𝐹𝐷
𝐼𝑁 = 𝐾𝐶
𝑉𝐸
1 − 0.577𝐼N 𝐼N ≤ 0.433
√0.75 − 𝐼N | 0.433
2 < 𝐼N < 0.75
𝐹EX =
1.732(1 − 𝐼N ) 0.75 ≤ 𝐼N ≤ 1
{ 0 𝐼N >1
The model AC2C requires the following parameters for a proper parameterization of the function
blocks:
24 April 2024
SIEMENS PSS SINCAL Models
Machine Controller Models
Linking of the model AC2C to a chosen synchronous machine model in the different PSS products
is generally described in Linking Machine Controller Models chapter.
4.4 AC4C
April 2024 25
PSS SINCAL Models SIEMENS
Machine Controller Models
The model AC4C represents high initial response field-controlled alternator excitation systems. The
block diagram of the model is shown in the following figure.
The switch blocks after the limiter inputs (UEL, OEL, SCL) are intended to switch between options a
and b according to the standard:
The model AC4C requires the following parameters for a proper parameterization of the function
blocks:
Linking of the model AC4C to a chosen synchronous machine model in the different PSS products
is generally described in Linking Machine Controller Models chapter.
26 April 2024
SIEMENS PSS SINCAL Models
Machine Controller Models
4.5 AC7B
The model AC7B represents excitation systems consist of an AC alternator with either stationary or
rotating rectifiers. It includes a high bandwidth inner loop regulating generator field voltage or exciter
current, a fast excitation current limit and a PID voltage controller. A stabilization feedback is provided
in case of deactivated derivative term in the PID control. PSS control can be appropriately supplied
by PSS2B or PSS3B models. The block diagram of the model is shown in the following figure.
The gain definitions blocks for the integral parts of the controllers catch the zero parameter cases,
so that the integral part can be completely deactivated by the variable limits VRMX, VRMN or VAMX
and VAMN. The integrators are each freezed, if a limit of the appropriate controller output is violated.
The block with the output variable VTKP checks the parameter #KP for the zero condition by:
IF(#KP.EQ.0)THEN
VTKP=1.
ELSE
VTKP=#KP*VT
ENDIF
The rectifier regulation in the excitation system is considered by the block FEX according to the
standard:
𝐼𝐹𝐷
𝐼𝑁 = 𝐾𝐶
𝑉𝐸
1 − 0.577𝐼N 𝐼N ≤ 0.433
√0.75 − 𝐼N |2 0.433 < 𝐼N < 0.75
𝐹EX =
1.732(1 − 𝐼N ) 0.75 ≤ 𝐼N ≤ 1
{ 0 𝐼N >1
April 2024 27
PSS SINCAL Models SIEMENS
Machine Controller Models
The model AC7B requires the following parameters for a proper parameterization of the function
blocks:
Linking of the model AC7B to a chosen synchronous machine model in the different PSS products
is generally described in Linking Machine Controller Models chapter.
4.6 AC8B
28 April 2024
SIEMENS PSS SINCAL Models
Machine Controller Models
The model AC8B represents an excitation system with a PID voltage controller and a simplified inner
control loop. Compared to the IEEE 421.5-2005 standard it is slightly modified according to the
reference [2], adding a non-windup in the PID controller. On the other hand, the limits #VRMX and
#VRMN are defined to be constant during the entire simulation. The block diagram of the model is
shown in the following figure.
The gain definition block for the integral part of the controller #KIR catches the zero parameter case,
so that the integral part can be completely deactivated by the variable limits VPMX and VPMN. The
integrator is freezed, if a limit of the controller output is violated. The rectifier regulation in the
excitation system is considered by the block FEX according to the standard:
𝐼𝐹𝐷
𝐼𝑁 = 𝐾𝐶
𝑉𝐸
1 − 0.577𝐼N 𝐼N ≤ 0.433
√0.75 − 𝐼 2
N |
0.433 < 𝐼N < 0.75
𝐹EX =
1.732(1 − 𝐼N ) 0.75 ≤ 𝐼N ≤ 1
{ 0 𝐼N >1
The model AC8B requires the following parameters for a proper parameterization of the function
blocks:
April 2024 29
PSS SINCAL Models SIEMENS
Machine Controller Models
Linking of the model AC8B to a chosen synchronous machine model in the different PSS products
is generally described in Linking Machine Controller Models chapter.
4.7 BBGOV1
The model BBGOV1 represents a Brown-Boveri turbine-governor system. It contains a droop driven
PI controller with limited valves as well as turbines in three stages. The block diagram of the model
is shown in the following figure.
The model contains symmetrical deadband limits by #fcutn = -#fcut. In the VT4/PELEC switch block,
on the one hand the feedback branch can be switched and on the other hand the base for electrical
power input is differentiated by the parameter #APPUSR:
IF(#SWITCH.EQ.0)THEN
IF(#APPUSR.EQ.1)THEN !CALLED BY PSS(R)E
VSW = PELEC*SB/MB
ELSE !CALLED BY PSS(R)NETOMAC/PSS(R)SINCAL
VSW = PELEC
ENDIF
ELSE
VSW = VT4
ENDIF
The model BBGOV1 requires the following parameters for a proper parameterization of the function
blocks:
30 April 2024
SIEMENS PSS SINCAL Models
Machine Controller Models
Linking of the model BBGOV1 to a chosen synchronous machine model in the different PSS products
is generally described in Linking Machine Controller Models chapter.
4.8 BBSEX1
The model BBSEX1 represents a Brown-Boveri excitation system with voltage-dependent limitation
of excitation field voltage. The block diagram of the model is shown in the following figure.
April 2024 31
PSS SINCAL Models SIEMENS
Machine Controller Models
The model BBSEX1 requires the following parameters for a proper parameterization of the function
blocks:
Linking of the model BBSEX1 to a chosen synchronous machine model in the different PSS products
is generally described in Linking Machine Controller Models chapter.
4.9 BUDCZT
The model BUDCZT represents a Czech proportional/integral excitation system. The block diagram
of the model is shown in the following figure.
The model BUDCZT requires the following parameters for a proper parameterization of the function
blocks:
32 April 2024
SIEMENS PSS SINCAL Models
Machine Controller Models
Linking of the model BUDCZT to a chosen synchronous machine model in the different PSS products
is generally described in Linking Machine Controller Models chapter.
4.10 COMP
The model COMP is a current compensating model for the voltage regulator. It allows the AVR to
control a voltage at a point separated from the machine terminals by the reactance #XE. The block
diagram of the model is shown in the following figure.
The block VCT Calculation is a simple algorithm for the determination of the compensated voltage
by reactance #XE, terminal voltage (VTR, VTI) and generator current (ITR, ITI):
VCT1 = (VTR+#XE*ITI)^2 + (VTI-#XE*ITR)^2
VCT = SQRT(VCT1)
The model COMP requires the following parameters for a proper parameterization of the function
blocks:
Linking of the model COMP to a chosen synchronous machine model or rather an excitation system
model in the different PSS products is generally described in Linking Machine Controller Models
chapter.
April 2024 33
PSS SINCAL Models SIEMENS
Machine Controller Models
4.11 DC3A
The model DC3A represents dc commutator exciters with non-continuously acting regulators
according to IEEE421.5-1992 with the additional implementation of a filter for the compensated
voltage as well as the auxiliary devices inputs. The block diagram of the model is shown in the
following figure.
The variable limiter block with the output VR passes through the input value VRH depending on the
variable VERR1 and the violated limits:
IF(VERR1.GT.#KVMX)THEN
VR = #VRMX
ELSEIF(VERR1.LT.#KVMN)THEN
VR = #VRMN
ELSE
VR = VRH
ENDIF
The model DC3A requires the following parameters for a proper parameterization of the function
blocks:
Linking of the model DC3A to a chosen synchronous machine model in the different PSS products
is generally described in Linking Machine Controller Models chapter.
34 April 2024
SIEMENS PSS SINCAL Models
Machine Controller Models
4.12 DEGOV
The model DEGOV represents a Woodward diesel governor with an electric control box, actuator
and engine part. The main output variable and connection to the synchronous machine model is the
mechanical power in MVA. The block diagram of the model is shown in the following figure.
The model DEGOV requires the following parameters for a proper parameterization of the function
blocks:
Linking of the model DEGOV to a chosen synchronous machine model in the different PSS products
is generally described in Linking Machine Controller Models chapter.
4.13 DEGOV1
April 2024 35
PSS SINCAL Models SIEMENS
Machine Controller Models
The model DEGOV1 represents a Woodward diesel governor with an electric control box, actuator
and engine part. Additionally, it has an option for electric power feedback in the control. The main
output variable and connection to the synchronous machine model is the mechanical power in MVA
base. The block diagram of the model is shown in the following figure.
In order to get a proper initialization, the state variables of blocks V2 and V3 are suitably set with
values from machine initialization:
V3 = PMECH0 / #K
V2 = 0
The model DEGOV1 requires the following parameters for a proper parameterization of the function
blocks:
Linking of the model DEGOV1 to a chosen synchronous machine model in the different PSS products
is generally described in Linking Machine Controller Models chapter.
4.14 ESAC4A
36 April 2024
SIEMENS PSS SINCAL Models
Machine Controller Models
The model ESAC4A represents an AC excitation system. It models a full thyristor bridge in the output
circuit and exhibits a high initial response. The block diagram of the model is shown in the following
figure.
The model ESAC4A requires the following parameters for a proper parameterization of the function
blocks:
Linking of the model ESAC4A to a chosen synchronous machine model in the different PSS products
is generally described in Linking Machine Controller Models chapter.
4.15 EXAC1
April 2024 37
PSS SINCAL Models SIEMENS
Machine Controller Models
The model EXAC1 represents an AC excitation system. The block diagram of the model is shown in
the following figure.
The rectifier regulation in the excitation system is considered by the block FEX according to the
reference:
𝐼𝐹𝐷
𝐼𝑁 = 𝐾𝐶
𝑉𝐸
1 − 0.577𝐼N 𝐼N ≤ 0.433
√0.75 − 𝐼 2
N |
0.433 < 𝐼N < 0.75
𝐹EX =
1.732(1 − 𝐼N ) 0.75 ≤ 𝐼N ≤ 1
{ 0 𝐼N >1
The model EXAC1 requires the following parameters for a proper parameterization of the function
blocks:
Linking of the model EXAC1 to a chosen synchronous machine model in the different PSS products
is generally described in Linking Machine Controller Models chapter.
38 April 2024
SIEMENS PSS SINCAL Models
Machine Controller Models
4.16 EXAC1A
The model EXAC1A is a modified IEEE type AC1 excitation system. The block diagram of the model
is shown in the following figure.
The rectifier regulation in the excitation system is considered by the block FEX according to the
reference:
𝐼𝐹𝐷
𝐼𝑁 = 𝐾𝐶
𝑉𝐸
1 − 0.577𝐼N 𝐼N ≤ 0.433
√0.75 − 0.433
𝐼N2 < 𝐼N < 0.75
𝐹EX = |
1.732(1 − 𝐼N ) 0.75 ≤ 𝐼N ≤ 1
{ 0 𝐼N >1
The model EXAC1A requires the following parameters for a proper parameterization of the function
blocks:
April 2024 39
PSS SINCAL Models SIEMENS
Machine Controller Models
Linking of the model EXAC1A to a chosen synchronous machine model in the different PSS products
is generally described in Linking Machine Controller Models chapter.
4.17 EXAC2
The model EXAC2 is a modified IEEE type AC2 excitation system containing a two-stage control
and feedback branches as well as an exciter stabilizer. The block diagram of the model is shown in
the following figure.
The rectifier regulation in the excitation system is considered by the block FEX according to the
reference:
𝐼𝐹𝐷
𝐼𝑁 = 𝐾𝐶
𝑉𝐸
1 − 0.577𝐼N 𝐼N ≤ 0.433
√0.75 − 𝐼 2 0,433 < 𝐼N < 0.75
𝐹EX = N |
1.732(1 − 𝐼N ) 0.75 ≤ 𝐼N ≤ 1
{ 0 𝐼N >1
The model EXAC2 requires the following parameters for a proper parameterization of the function
blocks:
40 April 2024
SIEMENS PSS SINCAL Models
Machine Controller Models
Linking of the model EXAC2 to a chosen synchronous machine model in the different PSS products
is generally described in Linking Machine Controller Models chapter.
4.18 EXAC4
The model EXAC4 represents an AC excitation system. The block diagram of the model is shown in
the following figure.
The variable limits for the field voltage, EMAX and EMIN, are determined by means of the exciter
field current IFD:
EMAX = #VRMX-(#KC*IFD)
EMIN = #VRMN-(#KC*IFD)
April 2024 41
PSS SINCAL Models SIEMENS
Machine Controller Models
The model EXAC4 requires the following parameters for a proper parameterization of the function
blocks:
Linking of the model EXAC4 to a chosen synchronous machine model in the different PSS products
is generally described in Linking Machine Controller Models chapter.
4.19 EXBAS
The model EXBAS represents a Basler static voltage regulator feeding a dc or an ac rotating exciter.
The block diagram of the model is shown in the following figure.
The rectifier regulation in the excitation system is considered by the block FEX according to the
reference:
𝐼𝐹𝐷
𝐼𝑁 = 𝐾𝐶
𝑉𝐸
1 − 0.577𝐼N 𝐼N ≤ 0.433
√0.75 − 𝐼 2 0.433 < 𝐼N < 0.75
𝐹EX = N |
1.732(1 − 𝐼N ) 0.75 ≤ 𝐼N ≤ 1
{ 0 𝐼N >1
42 April 2024
SIEMENS PSS SINCAL Models
Machine Controller Models
The model EXBAS requires the following parameters for a proper parameterization of the function
blocks:
Linking of the model EXBAS to a chosen synchronous machine model in the different PSS products
is generally described in Linking Machine Controller Models chapter.
4.20 ExcBBC
April 2024 43
PSS SINCAL Models SIEMENS
Machine Controller Models
The model ExcBBC represents a static excitation system model containing a gated thyristor bridge
fed by a transformer at the main generator terminals. The block diagram of the model is shown in
the following figure.
The variation in #K is not implemented; this parameter is constant. The model ExcBBC requires the
following parameters for a proper parameterization of the function blocks:
Linking of the model ExcBBC to a chosen synchronous machine model in the different PSS products
is generally described in Linking Machine Controller Models chapter.
4.21 ExcCZ
44 April 2024
SIEMENS PSS SINCAL Models
Machine Controller Models
The model ExcCZ is a Czech excitation system model containing a PI controller. The block diagram
of the model is shown in the following figure.
The model ExcCZ requires the following parameters for a proper parameterization of the function
blocks:
Linking of the model ExcCZ to a chosen synchronous machine model in the different PSS products
is generally described in Linking Machine Controller Models chapter.
4.22 ExcDC3A1
April 2024 45
PSS SINCAL Models SIEMENS
Machine Controller Models
The model ExcDC3A1 represents a modified old IEEE type 3 DC excitation system. Beside the basic
components it contains a voltage and current dependent limitation VTH and VA. The block diagram
of the model is shown in the following figure.
2 2
𝑉𝑎 = √𝑉𝑡ℎ − (0.78𝐼𝑓𝑑 )
It contains two Boolean variables, #exclim and #vblim, to switch limiter options for EFD and Vb:
IF(#exclim.EQ.1)THEN
#efdmin = 0
ELSE
#efdmin = -1e8
ENDIF
IF(#vblim.EQ.1)THEN
#vbmx = #vbmax
#vbmn = 0
#vb1mx = 1e8
#vb1mn = -1e8
ELSE
#vbmx = 1e8
#vbmn = -1e8
#vb1mx = #vb1max
#vb1mn = 0
ENDIF
The model ExcDC3A1 requires the following parameters for a proper parameterization of the
function blocks:
46 April 2024
SIEMENS PSS SINCAL Models
Machine Controller Models
Linking of the model ExcDC3A1 to a chosen synchronous machine model in the different PSS
products is generally described in Linking Machine Controller Models chapter.
4.23 ExcHU
The model ExcHU is a Hungarian excitation system model. The block diagram of the model is shown
in the following figure.
The model ExcHU requires the following parameters for a proper parameterization of the function
blocks:
April 2024 47
PSS SINCAL Models SIEMENS
Machine Controller Models
#emin -0.866 -1E2 0 pu Field voltage control signal lower limit on AVR base
#emax 0.996 0 1E2 pu Field voltage control signal upper limit on AVR base
#ki 0.21428 0 1E2 pu Current base conversion constant
#ai 22 0 1E3 pu Minor loop PI tag gain factor
#ti 0.01333 0 1E3 sec Minor loop PI control tag integration time constant
#atr 2.19 0 1E2 pu AVR constant
#ke 4.666 0 1E2 pu Voltage base conversion constant
#vstep 0 0 1 pu Voltage step value
#tstep 1E6 0 1E9 sec Voltage step time
Linking of the model ExcHU to a chosen synchronous machine model in the different PSS products
is generally described in Linking Machine Controller Models chapter.
4.24 ExcSCRX
The model ExcSCRX is a simple excitation system model representing different excitation systems
using a generic approach. The negative current logic may lead to specific phenomena if used. The
model is related to the SCRX model. The block diagram of the model is shown in the following figure.
By parameter #cswitch it is decided whether terminal voltage VT or a fixed value of 1 is used for the
multiplication with variable S3. The block Negative Current Logic with the inputs IFD, EFD1 and Vf
as well the output EFD contains a field current dependent signal selector by the following algorithm:
IF(IFD.GE.0)THEN
EFD=EFD1
ELSE
IF(#rcrfd.EQ.0)THEN
EFD=-IFD*10
ELSE
EFD=-Vf
ENDIF
48 April 2024
SIEMENS PSS SINCAL Models
Machine Controller Models
ENDIF
The model ExcSCRX requires the following parameters for a proper parameterization of the function
blocks:
Linking of the model ExcSCRX to a chosen synchronous machine model in the different
PSS products is generally described in Linking Machine Controller Models chapter.
4.25 ExcST1A
The model ExcST1A is a modification of the classical ST1A model of a static excitation system for
synchronous machines according to IEEE. It neglects the overexcitation and underexcitation limiters
in its functionality. The block diagram of the model is shown in the following figure.
April 2024 49
PSS SINCAL Models SIEMENS
Machine Controller Models
The model ExcST1A requires the following parameters for a proper parameterization of the function
blocks:
Linking of the model ExcST1A to a chosen synchronous machine model in the different
PSS products is generally described in Linking Machine Controller Models chapter.
4.26 ExcST2A
50 April 2024
SIEMENS PSS SINCAL Models
Machine Controller Models
The model ExcST2A is a modification of the classical ST2A model of a static excitation system for
synchronous machines according to IEEE. It contains an additional lead-lag block in order to match
WECC. The block diagram of the model is shown in the following figure.
The model ExcST2A requires the following parameters for a proper parameterization of the function
blocks:
Linking of the model ExcST2A to a chosen synchronous machine model in the different
PSS products is generally described in Linking Machine Controller Models chapter.
4.27 ExcST3A
April 2024 51
PSS SINCAL Models SIEMENS
Machine Controller Models
Superordinate model -
type
File name ExcST3A.xmac
Reference "Common Information Model (CIM) for Dynamics – Standard Models",
EPRI, Technical Report, 2012.
The model ExcST3A is a modification of the classical ST3A model of a static excitation system for
synchronous machines according to IEEE. Additionally, it considers a multiplication with generator
speed. The block diagram of the model is shown in the following figure.
The model ExcST3A requires the following parameters for a proper parameterization of the function
blocks:
52 April 2024
SIEMENS PSS SINCAL Models
Machine Controller Models
Linking of the model ExcST3A to a chosen synchronous machine model in the different
PSS products is generally described in Linking Machine Controller Models chapter.
4.28 ExcST4B
The model ExcST4B is a modification of the ST4B model of a static excitation system for
synchronous machines according to IEEE with options on overexcitation (OEL) and underexcitation
limiter (UEL) inputs and with a Vgmax limited inner loop feedback with gain Kg. The block diagram
of the model is shown in the following figure.
The model ExcST4B requires the following parameters for a proper parameterization of the function
blocks:
April 2024 53
PSS SINCAL Models SIEMENS
Machine Controller Models
Linking of the model ExcST4B to a chosen synchronous machine model in the different
PSS products is generally described in Linking Machine Controller Models chapter.
4.29 ExcST6B
The model ExcST6B is a modification of the ST6B model of a static excitation system for
synchronous machines according to IEEE with PID controller and optional inner feedback loops. The
block diagram of the model is shown in the following figure.
The model ExcST6B requires the following parameters for a proper parameterization of the function
blocks:
54 April 2024
SIEMENS PSS SINCAL Models
Machine Controller Models
#kg 1 0 1E3 pu Feedback gain constant of the inner loop field regulator
#tg 0.02 0 1E2 sec Feedback time constant of inner loop field voltage regulator
#vrmax 4.81 0 1E3 pu Maximum field voltage regulator output
#vrmin -3.85 -1E3 0 pu Minimum field voltage regulator output
Selector Vmult [true/false]
#vmult 1 0 1 0/1 0: do not multiply by voltage
1: multiply by voltage
Selector K1 [true/false]
#k1 1 0 1 0/1 0: not from IFD
1: from IFD
#xc 0.05 0 1E2 pu Excitation source reactance
#kvd 0 0 1E3 pu Voltage regulator derivative gain
#tvd 0 0 1E3 sec Voltage regulator derivative time constant
OEL input selector
0: no OEL
#oelin 0 0 2 0/1/2
1: before UEL
2: after UEL
#ilr 4.164 0 1E3 pu Exciter output current limit reference
#kcl 1.0577 0 1E3 pu Exciter output current limit adjustment
#klr 17.33 0 1E3 pu Exciter output current limit adjustment
#ts 0 0 1E3 sec Rectifier firing time constant
#vimax 10 0 1E2 pu Maximum voltage regulator input limit
#vimin -10 -1E2 0 pu Minimum voltage regulator input limit
Selector Vilim [true/false]
#vilim 1 0 1 0/1 0: Limiter is not active
1: Limiter is active
#vstep 0 0 1 pu Voltage step value
#tstep 1E6 0 1E9 sec Voltage step time
Linking of the model ExcST6B to a chosen synchronous machine model in the different
PSS products is generally described in Linking Machine Controller Models chapter.
4.30 ExcST7B
April 2024 55
PSS SINCAL Models SIEMENS
Machine Controller Models
The model ExcST7B is a modification of the ST7B model of a static excitation system for
synchronous machines according to IEEE. The block diagram of the model is shown in the following
figure.
The model ExcST7B requires the following parameters for a proper parameterization of the function
blocks:
Linking of the model ExcST7B to a chosen synchronous machine model in the different
PSS products is generally described in Linking Machine Controller Models chapter.
56 April 2024
SIEMENS PSS SINCAL Models
Machine Controller Models
4.31 EXST1
The model EXST1 represents a static excitation system. The block diagram of the model is shown
in the following figure.
The variable limits for the field voltage, EMAX and EMIN, are determined by means of the exciter
field current IFD and the terminal voltage VT:
EMAX = (VT*#VRMX)-(#KC*IFD)
EMIN = (VT*#VRMN)-(#KC*IFD)
The model EXST1 requires the following parameters for a proper parameterization of the function
blocks:
Linking of the model EXST1 to a chosen synchronous machine model in the different PSS products
is generally described in Linking Machine Controller Models chapter.
April 2024 57
PSS SINCAL Models SIEMENS
Machine Controller Models
4.32 EXST2
The model EXST2 represents a static excitation system. The block diagram of the model is shown
in the following figure.
The equivalent voltage VE is calculated by means of the terminal signals and the parameters #KP
and #KI:
C:J = CMPLX(0.,1.)
C:IT = CMPLX(REIT,IMIT)
C:VT = CMPLX(REVT,IMVT)
C:VE = #KP*C:VT+C:J*#KI*C:IT
VE = ABS(C:VE)
If the parameters #KP and #KI are set to zero, then VB is equal to 1 and the influence of the rectifier
is neglected. The rectifier regulation in the excitation system is considered by the block FEX
according to the reference:
𝐼𝐹𝐷
𝐼𝑁 = 𝐾𝐶
𝑉𝐸
1 − 0.577𝐼N 𝐼N ≤ 0.433
√0.75 − 𝐼 2
N |
0.433 < 𝐼N < 0.75
𝐹EX =
1.732(1 − 𝐼N ) 0.75 ≤ 𝐼N ≤ 1
{ 0 𝐼N >1
58 April 2024
SIEMENS PSS SINCAL Models
Machine Controller Models
The model EXST2 requires the following parameters for a proper parameterization of the function
blocks:
Linking of the model EXST2 to a chosen synchronous machine model in the different PSS products
is generally described in Linking Machine Controller Models chapter.
4.33 EXST2A
The model EXST2A represents a static excitation system. It is a modified version of model EXST2
and differentiates in the variable VBR by multiplication instead of summation. The block diagram of
the model is shown in the following figure.
April 2024 59
PSS SINCAL Models SIEMENS
Machine Controller Models
The equivalent voltage VE is calculated by means of the terminal signals and the parameters #KP
and #KI:
C:J = CMPLX(0.,1.)
C:IT = CMPLX(REIT,IMIT)
C:VT = CMPLX(REVT,IMVT)
C:VE = #KP*C:VT+C:J*#KI*C:IT
VE = ABS(C:VE)
If the parameters #KP and #KI are set to zero, then VB is equal to 1 and the influence of the rectifier
is neglected. The rectifier regulation in the excitation system is considered by the block FEX
according to the reference:
𝐼𝐹𝐷
𝐼𝑁 = 𝐾𝐶
𝑉𝐸
1 − 0.577𝐼N 𝐼N ≤ 0.433
𝐹EX = √0.75 − 𝐼N |0.433 < 𝐼N < 0.75
2
1.732(1 − 𝐼N ) 0.75 ≤ 𝐼N ≤ 1
{ 0 𝐼N > 1
The model EXST2A requires the following parameters for a proper parameterization of the function
blocks:
Linking of the model EXST2A to a chosen synchronous machine model in the different PSS products
is generally described in Linking Machine Controller Models chapter.
4.34 EXST3
60 April 2024
SIEMENS PSS SINCAL Models
Machine Controller Models
The model EXST3 represents a static excitation system. The block diagram of the model is shown
in the following figure.
The equivalent voltage VE is calculated by means of the terminal signals and the parameters #KP,
#KI, #THP and #XL:
C:J = CMPLX(0.,1.)
C:IT = CMPLX(REIT,IMIT)
C:VT = CMPLX(REVT,IMVT)
KP_RE = #KP*COS(#THP)
KP_IM = #KP*SIN(#THP)
C:KP = CMPLX(KP_RE,KP_IM)
C:KI = CMPLX(#KI,0.)
C:XL = CMPLX(#XL,0.)
C:VE = C:KP*C:VT+C:J*(C:KI+C:KP*C:XL)*C:IT
VE = ABS(C:VE)
If the parameters #KP and #KI are set to zero, then VB is equal to 1 and the influence of the rectifier
is neglected. The rectifier regulation in the excitation system is considered by the block FEX
according to the reference:
𝐼𝐹𝐷
𝐼𝑁 = 𝐾𝐶
𝑉𝐸
1 − 0.577𝐼N 𝐼N ≤ 0.433
√0.75 − 𝐼 2 0.433 < 𝐼N < 0.75
𝐹EX = N |
1.732(1 − 𝐼N ) 0.75 ≤ 𝐼N ≤ 1
{ 0 𝐼N >1
The model EXST3 requires the following parameters for a proper parameterization of the function
blocks:
April 2024 61
PSS SINCAL Models SIEMENS
Machine Controller Models
Linking of the model EXST3 to a chosen synchronous machine model in the different PSS products
is generally described in Linking Machine Controller Models chapter.
4.35 GAST
The model GAST represents a simple gas turbine. It contains the turbine-governor droop (#R), a
constant load limit (rating of gas turbine) and three time constants. These model the behavior of the
valves (#T1), of the turbine (#T2) and the load limit response (#T3). The main output variable and
connection to the synchronous machine model is the mechanical power PMECH in MBASE. The
block diagram of the MBASE based model is shown in the following figure.
The model GAST requires the following parameters for a proper parameterization of the function
blocks:
62 April 2024
SIEMENS PSS SINCAL Models
Machine Controller Models
Linking of the model GAST to a chosen synchronous machine model in the different PSS products
is generally described in Linking Machine Controller Models chapter.
4.36 GASTD
The model GASTD represents a simple gas turbine. It contains the turbine-governor droop (#R), a
constant load limit (rating of gas turbine) and three time constants. These model the behavior of the
valves (#T1), of the turbine (#T2) and the load limit response (#T3). The main output variable and
connection to the synchronous machine model is the mechanical power PMECH in MBASE.
Compared to GAST, it additionally has a deadband at speed input and rating of output and
parameters to an optional parameter #Trate. The block diagram of the MBASE based model is shown
in the following figure.
The model GASTD requires the following parameters for a proper parameterization of the function
blocks:
April 2024 63
PSS SINCAL Models SIEMENS
Machine Controller Models
For integrating #Trate a simple equation is used to define a new gain #fPM.
IF((#Trate.GT.0).AND.(#MBASE.GT.0))THEN
#fPM = #Trate/#MBASE
ELSE
#fPM = 1.
ENDIF
Linking of the model GASTD to a chosen synchronous machine model in the different PSS products
is generally described in Linking Machine Controller Models chapter.
4.37 GovHydroPID2
The model GovHydroPID2 represents a hydro turbine and a governor with a PID controller. It
considers plants with straight forward penstock configurations and electro-hydraulic governors. The
block diagram of the model is shown in the following figure.
For the reference calculation and flag option, there are on the one hand two hold blocks, each
represented by delay blocks with large time constants. On the other hand, the block set-point
comparison contains the differentiation of the reference and actual value:
IF(#flag.EQ.1)THEN
VB = GATE
VBref = GATEref
ELSE
VB = Pe
64 April 2024
SIEMENS PSS SINCAL Models
Machine Controller Models
VBref = Peref
ENDIF
In order to enable the backward type of model initialization, the values for the PID controller have to
be derived within the initialization section based on the result from the power flow and the machine
initialization:
Pref = Pmech0*MBASE/#mwbase
IF(Pref.LE.0)THEN
GATEr = 0
ELSEIF((Pref.GT.0).AND.(Pref.LE.#p1).AND.(#p1.GT.0))THEN
GATEr = Pref*(#g1-#g0)/#p1 + #g0
ELSEIF((Pref.GT.#p1).AND.(Pref.LE.#p2).AND.(#p2.GT.0))THEN
GATEr = (Pref-#p1)*(#g2-#g1)/(#p2-#p1) + #g1
ELSEIF((Pref.GT.#p2).AND.(#p3.GT.0))THEN
GATEr = (Pref-#p2)*(#gmax-#g2)/(#p3-#p2) + #g2
ELSE
GATEr = 0
ENDIF
Prop = 0
Int = GATEr
In the MWBASE block the base for power values is differentiated by the parameter #mwbase,
factorizing at the output of the controller:
IF(#mwbase.EQ.0)THEN
MB_MWB = 1
ELSE
MB_MWB = #mwbase/MBASE
ENDIF
Pm = Pm2*MB_MWB
Since this model contains a normalized power input PEL, an APPUSR block has to be used in order
to differentiate between the usage in different tools:
IF(#APPUSR.EQ.1)THEN !CALLED BY PSS(R)E
Pe = PEL*(SBASE/MBASE)
ELSE !CALLED BY PSS(R)NETOMAC/PSS(R)SINCAL
Pe = PEL
ENDIF
The model GovHydroPID2 requires the following parameters for a proper parameterization of the
function blocks:
April 2024 65
PSS SINCAL Models SIEMENS
Machine Controller Models
Linking of the model GovHydroPID2 to a chosen synchronous machine model in the different
PSS products is generally described in Linking Machine Controller Models chapter.
4.38 GovSteam1
The model GovSteam1 represents a steam turbine power plant with entirely four steam-stages and
main governor characteristics. It contains an intentional and an unintentional deadband as well as
options for valve characteristics. By means of parameter #mwbase it is able to normalize model
variables to another base. This model does not support cross-compound units in the default version
as it is intended for in the standards. For that purpose, please use model IEEEG1M. Alternatively, a
controller input block could be used in PSS SINCAL and PSS NETOMAC in order to exchange the
variable to a second model. The following figure shows the block diagram of the model.
During pre-processing, there are some parameter specific calculations in order to activate/deactivate
and normalize (nominal frequency) the intentional deadband (later using #db1p), to handle and
normalize (#mwbase or MBASE) the unintentional deadband (later using #db2p) as well as to catch
the parameter case #t3 = 0:
$ Activation/Deactivation of intentional deadband
IF(#sdb1.EQ.1)THEN
IF(#FNOM.NE.0)THEN ! Normalize to nominal frequency
66 April 2024
SIEMENS PSS SINCAL Models
Machine Controller Models
#db1p = #db1/#FNOM
ELSE
#db1p = #db1/50.
ENDIF
ELSE
#db1p = 0
ENDIF
$ Handling of unintentional deadband MW/pu
IF(#mwbase.GT.0)THEN
#db2p = #db2/#mwbase
ELSEIF(#MBASE.GT.0)THEN
#db2p = #db2/#MBASE
ELSE
#db2p = #db2
ENDIF
$ Catch t3 = 0
IF(#t3.EQ.0)THEN
#t3 = 1e-3
ELSE
#t3 = #t3
ENDIF
The sdb2 option for the feedback of the governor is implemented by:
IF(#sdb2.EQ.1)THEN
FB1 = GV
ELSE
FB1 = OPEN
ENDIF
This nonlinear characteristic of valves Pgv(Gv) has 6 data points, whereby first one should be (0,0)
and last one should be (1,1).
Before the output variable, the model variables in pu are referred to #mwbase, if a value is provided
by user:
IF((#mwbase.GT.0).AND.(#MBASE.GT.0))THEN
PMECH = PM10*#mwbase/#MBASE
ELSE
PMECH = PM10
ENDIF
The model GovSteam1 requires the following parameters for a proper parameterization of the
function blocks:
April 2024 67
PSS SINCAL Models SIEMENS
Machine Controller Models
Linking of the model GovSteam1 to a chosen synchronous machine model in the different
PSS products is generally described in Linking Machine Controller Models chapter.
4.39 GovSteam2
68 April 2024
SIEMENS PSS SINCAL Models
Machine Controller Models
The model GovSteam2 is a simplified governor model. The block diagram of the model is shown in
the following figure.
It contains symmetrical dead band limits by #ndbf = -#dbf. In the MWBASE block, the base for power
values is differentiated by the parameter #mwbase:
IF(#mwbase.EQ.0)THEN
MB_MWB = 1
ELSE
MB_MWB = #mwbase/MBASE
ENDIF
PMech = Pm*MB_MWB
The model GovSteam2 requires the following parameters for a proper parameterization of the
function blocks:
Linking of the model GovSteam2 to a chosen synchronous machine model in the different
PSS products is generally described in Linking Machine Controller Models chapter.
4.40 GovSteamEU
April 2024 69
PSS SINCAL Models SIEMENS
Machine Controller Models
The model GovSteamEU represents a simplified boiler and steam turbines (HP and LP parts) with
a PID governor. In the current version of the standard, it is assumed that the stator resistance of the
synchronous machine is neglected so that the boiler set-point is similar to mechanical power in typical
operating points. The block diagram of the model is shown in the following figure.
It contains symmetrical deadbands for frequency and speed correction with the appropriate gains
and limitations at outputs. In the Pel Conversion block, the base for power values is differentiated by
the parameter #mwbase (setting for an alternative power base) and the differentiation of program
usage is made by #APPUSR:
IF(#APPUSR.EQ.1)THEN !CALLED BY PSS(R)E
IF(#mwbase.EQ.0)THEN
Pel = Pef*(SB/MB)
ELSE
Pel = Pef*(SB/#mwbase)
ENDIF
ELSE !CALLED BY PSS(R)NETOMAC/PSS(R)SINCAL
IF(#mwbase.EQ.0)THEN
Pel = Pef
ELSE
Pel = Pef*(MB/#mwbase)
ENDIF
ENDIF
IF(CI.NE.0)THEN
Prh0 = PM0MB/CI
ELSE
Prh0 = PM0MB
ENDIF
The reference value Pref is set to Pel at initialization and is hold for the time of the simulation.
70 April 2024
SIEMENS PSS SINCAL Models
Machine Controller Models
The model GovSteamEU requires the following parameters for a proper parameterization of the
function blocks:
Linking of the model GovSteamEU to a chosen synchronous machine model in the different
PSS products is generally described in Linking Machine Controller Models chapter.
4.41 HYGOV
April 2024 71
PSS SINCAL Models SIEMENS
Machine Controller Models
The model HYGOV is a simple representation of hydro units by a governor, containing a PI control,
and by water column and turbine. It is often used in power system stability studies. It treats speed-
dependent losses by factor DT. Main output variable and connection to the synchronous machine
model is the mechanical power in MVA base. The block diagram of the model is shown in the
following figure.
In order to get a proper initialization, based on the provided mechanical power in steady-state solution
P0, the state variables Q, G, C3 and REF (as calculated value) are suitably set:
Q = P0 / #AT - #QNLM
G = Q
C = G
R = C * #RP
E = 0
Ref = C * #RP
The model HYGOV requires the following parameters for a proper parameterization of the function
blocks:
Linking of the model HYGOV to a chosen synchronous machine model in the different PSS products
is generally described in Linking Machine Controller Models chapter.
4.42 HYGOVD
72 April 2024
SIEMENS PSS SINCAL Models
Machine Controller Models
The model HYGOVD is a simple representation of hydro units by a governor, containing a PI control,
and by water column and turbine. It is often used in power system stability studies. It treats speed-
dependent losses by factor DT. Main output variable and connection to the synchronous machine
model is the mechanical power in MVA base. Compared to HYGOV, it additionally has a deadband
at speed input and rating of output and parameters to an optional parameter #Trate. The block
diagram of the model is shown in the following figure.
In order to get a proper initialization, based on the provided mechanical power in steady-state solution
P0, the state variables Q, G, C3 and REF (as calculated value) are suitably set:
Q = P0 / #fPM / #AT - #QNLM
G = Q
C = G
R = C * #RP
E = 0
Ref = C * #RP
The model HYGOV requires the following parameters for a proper parameterization of the function
blocks:
For integrating #Trate a simple equation is used to define a new gain #fPM.
IF((#Trate.GT.0).AND.(#MBASE.GT.0))THEN
#fPM = #Trate/#MBASE
ELSE
April 2024 73
PSS SINCAL Models SIEMENS
Machine Controller Models
#fPM = 1.
ENDIF
Linking of the model HYGOVD to a chosen synchronous machine model in the different PSS
products is generally described in Linking Machine Controller Models chapter.
4.43 IEEEG1
The model IEEEG1 represents a steam turbine power plant with entirely four steam-stages and main
governor characteristics. This model does not support cross-compound units in the default version
as it is intended for in the standards. For that purpose, please use model IEEEG1M. Alternatively, a
controller input block could be used in PSS SINCAL and PSS NETOMAC in order to exchange the
variable to a second model. For newer versions containing a deadband and a turbine rating, please
use model IEEEG1D. The following figure shows the block diagram of the model.
Besides the both placeholder parameters without functionality, #JBUS and #M, the model IEEEG1
requires the following parameters for a proper parameterization of the function blocks:
74 April 2024
SIEMENS PSS SINCAL Models
Machine Controller Models
#K4 0 0 1 1 LP fraction K4
#T6 0.6 0 10 sec Time constant for third boiler pass
#K5 0.15 0 1 1 HP fraction K5
#K6 0 0 1 1 LP fraction K6
#T7 0.3 0 10 sec Time constant for fourth boiler pass
#K7 0.15 0 1 1 HP fraction K7
#K8 0 0 1 1 LP fraction K8
Linking of the model IEEEG1 to a chosen synchronous machine model in the different PSS products
is generally described in Linking Machine Controller Models chapter.
4.44 IEEEG1D
The model IEEEG1D represents a steam turbine power plant with entirely four steam-stages and
main governor characteristics. In addition to the standard model IEEEG1, it has a deadband for
speed deviation input as well as a turbine rating parameter in MW. This model does not support
cross-compound units in the default version as it is intended for in the standards. For that purpose,
please use model IEEEG1M. The following figure shows the block diagram of the model.
The block TRate differentiates the input options for the parameter #TRATE:
IF(#TRATE.GT.0)THEN
PM1 = PM10*#TRATE/MBASE
ELSE
PM1 = PM10
ENDIF
Besides the both placeholder parameters without functionality, #JBUS and #M, the model IEEEG1D
requires the following parameters for a proper parameterization of the function blocks:
April 2024 75
PSS SINCAL Models SIEMENS
Machine Controller Models
Linking of the model IEEEG1D to a chosen synchronous machine model in the different
PSS products is generally described in Linking Machine Controller Models chapter.
4.45 IEEEG1M
The model IEEEG1M is the faithful implementation of standard model IEEEG1. It supports cross-
compound units as it is intended for, differentiating both machines by parameters #NAME1 and
#NAME2. It is embedded in a multiple input multiple output (MIMO) frame and can be addressed by
the identifier #NAME. Due to that fact it can be only used in PSS SINCAL and PSS NETOMAC. It
cannot be used in PSS E! The following figure shows the block diagram of the model.
76 April 2024
SIEMENS PSS SINCAL Models
Machine Controller Models
The input block DSPEED utilizes FORTRAN code to get the speed deviation of the machine in HP
part of the power plant. The model IEEEG1M requires the following parameters for a proper
parameterization of the function blocks:
Linking of the model IEEEG1M to two chosen synchronous machine models in the different
PSS products is generally described in Linking Machine Controller Models chapter. Please keep in
mind, that this model needs the definition of the two identifiers #NAME1 and #NAME2. In
PSS SINCAL, the model has to be assigned to the machine in HP part.
4.46 IEEEG2
April 2024 77
PSS SINCAL Models SIEMENS
Machine Controller Models
The model IEEEG2 is a simple hydro turbine model containing the turbine-governor characteristics
as well as a transfer function representing the hydro dynamics (#T4). The main output variable and
connection to the synchronous machine model is the mechanical power in MVA base. The block
diagram of the MVA based model is shown in the following figure.
The temporary parameter T45 is calculated by means of the given input parameter #T4:
#T45 = #T4*0.5
The model IEEEG2 requires the following parameters for a proper parameterization of the function
blocks:
Linking of the model IEEEG2 to a chosen synchronous machine model in the different PSS products
is generally described in Linking Machine Controller Models chapter.
4.47 IEEEG3
78 April 2024
SIEMENS PSS SINCAL Models
Machine Controller Models
The model IEEEG3 is a hydro turbine model containing the turbine-governor characteristics as well
as a transfer function representing the hydro dynamics. The main output variable and connection to
the synchronous machine model is the mechanical power in MVA base. The block diagram of the
MVA based model is shown in the following figure.
The temporary parameter AA1 and TX are calculated by means of the given input parameters:
#AA1 = (#A23*#A11-#A13*#A21)/#A11
#TX = #A11*#TW
The model IEEEG3 requires the following parameters for a proper parameterization of the function
blocks:
Linking of the model IEEEG3 to a chosen synchronous machine model in the different PSS products
is generally described in Linking Machine Controller Models chapter.
4.48 IEEET1
April 2024 79
PSS SINCAL Models SIEMENS
Machine Controller Models
The model IEEET1 represents the IEEE type 1 excitation system containing a saturation function
SE. The block diagram of the model is shown in the following figure.
The model IEEET1 requires the following parameters for a proper parameterization of the function
blocks:
Linking of the model IEEET1 to a chosen synchronous machine model in the different PSS products
is generally described in Linking Machine Controller Models chapter.
4.49 IEEET2
80 April 2024
SIEMENS PSS SINCAL Models
Machine Controller Models
The model IEEET2 represents the IEEE type 2 excitation system containing a saturation function
SE. The block diagram of the model is shown in the following figure.
The model IEEET2 requires the following parameters for a proper parameterization of the function
blocks:
Linking of the model IEEET2 to a chosen synchronous machine model in the different PSS products
is generally described in Linking Machine Controller Models chapter.
4.50 IEESGO
April 2024 81
PSS SINCAL Models SIEMENS
Machine Controller Models
The model IEESGO represents a simple steam turbine introduced 1973 by Siemens PTI and
containing three turbine stages. It contains the turbine-governor droop (by reciprocal of #K1) and the
control behavior (#T1, #T2 and #T3), a power limitation and time constants for reheater (#T5) and
low-pressure turbine (#T6). The steam inlet delay is represented by time constant #T4. By the
fractions #K2 and #K3 the power contribution by the stages is defined. The fraction of high-pressure
stage is hereby derived from the others. The main output variable and connection to the synchronous
machine model is the mechanical power PMECH in MBASE. The block diagram of the MBASE based
model is shown in the following figure.
The model IEESGO requires the following parameters for a proper parameterization of the function
blocks:
Two temporary parameters are derived from input data and set to the fraction blocks:
#P1 = 1-#K2
#P2 = 1-#K3
Linking of the model IEESGO to a chosen synchronous machine model in the different PSS products
is generally described in Linking Machine Controller Models chapter.
4.51 IEESGOD
82 April 2024
SIEMENS PSS SINCAL Models
Machine Controller Models
The model IEESGOD represents an extension of IEESGO, which is a simple steam turbine
introduced 1973 by Siemens PTI and containing three turbine stages. It contains the turbine-governor
droop (by reciprocal of #K1) and the control behavior (#T1, #T2 and #T3), a power limitation and time
constants for reheater (#T5) and low-pressure turbine (#T6). The steam inlet delay is represented by
time constant #T4. By the fractions #K2 and #K3 the power contribution by the stages is defined.
The fraction of high-pressure stage is hereby derived from the others. Compared to IEESGO, it
additionally has a deadband at speed input and rating of output and parameters to an optional
parameter #Trate. The main output variable and connection to the synchronous machine model is
the mechanical power PMECH in MBASE. The block diagram of the MBASE based model is shown
in the following figure.
The model IEESGOD requires the following parameters for a proper parameterization of the function
blocks:
Two temporary parameters are derived from input data and set to the fraction blocks:
#P1 = 1-#K2
#P2 = 1-#K3
For integrating #Trate a simple equation is used to define a new gain #fPM.
IF((#Trate.GT.0).AND.(#MBASE.GT.0))THEN
#fPM = #Trate/#MBASE
ELSE
#fPM = 1.
ENDIF
Linking of the model IEESGOD to a chosen synchronous machine model in the different PSS
products is generally described in Linking Machine Controller Models chapter.
April 2024 83
PSS SINCAL Models SIEMENS
Machine Controller Models
4.52 IVOEX
The model IVOEX represents the IVO excitation system. It contains generic transfer functions in
order to obtain an approximation of the model to the real behavior. The block diagram of the model
is shown in the following figure.
Since the original model definition is in the polynomial form with coefficients for the nominator and
denominator, the parameters have to be converted for the usage in the normal form:
#V12 = #K1*#A1/#A2
#T121 = #T1/#A1
#T122 = #T2/#A2
#V23 = #K3*#A3/#A4
#T231 = #T3/#A3
#T232 = #T4/#A4
#V34 = #K5*#A5/#A6
#T341 = #T5/#A5
#T342 = #T6/#A6
The model IVOEX requires the following parameters for a proper parameterization of the function
blocks:
84 April 2024
SIEMENS PSS SINCAL Models
Machine Controller Models
Linking of the model IVOEX to a chosen synchronous machine model in the different PSS products
is generally described in Linking Machine Controller Models chapter.
4.53 IVOGO
The model IVOGO represents the IVO governor system. It contains generic transfer functions in
order to obtain an approximation of the model to the real behavior. The block diagram of the model
is shown in the following figure.
Since the original model definition is in the polynomial form with coefficients for the nominator and
denominator, the parameters have to be converted for the usage in the normal form:
#V12 = #K1*#A1/#A2
#T11 = #T1/#A1
#T22 = #T2/#A2
#V34 = #K3*#A3/#A4
#T33 = #T3/#A3
#T44 = #T4/#A4
#V56 = #K5*#A5/#A6
#T55 = #T5/#A5
#T66 = #T6/#A6
The model IVOGO requires the following parameters for a proper parameterization of the function
blocks:
April 2024 85
PSS SINCAL Models SIEMENS
Machine Controller Models
Linking of the model IVOGO to a chosen synchronous machine model in the different PSS products
is generally described in Linking Machine Controller Models chapter.
4.54 OverexcLim2
The model OverexcLim2 is an overexcitation limiter model containing a non-windup integrator. The
block diagram of the model is shown in the following figure.
In the initialization phase the error signal will be provided to the output. There is no other initialization
of the state variable VOEL. The model OverexcLim2 requires the following parameters for a proper
parameterization of the function blocks:
86 April 2024
SIEMENS PSS SINCAL Models
Machine Controller Models
Linking of the model OverexcLim2 to a chosen synchronous machine model or rather an excitation
system model in the different PSS products is generally described in Linking Machine Controller
Models chapter.
4.55 PSS3C
The model PSS3C represents a dual-input power system stabilizer containing an output logic, which
depends on the generator active power. The block diagram of the model is shown in the following
figure.
Selection of type of signal inputs SIG1 and SIG2 can be done by the parameters #ICS1 and #ICS2.
According to the choice, the inputs are appropriately linked to the signals, differentiating between the
application which uses the model.
The model PSS3C requires the following parameters for a proper parameterization of the function
blocks:
April 2024 87
PSS SINCAL Models SIEMENS
Machine Controller Models
#T2 0.02 0. 10. sec PSS transducer time constant for input channel 2
#TW1 1.5 0. 100. sec Washout time constant (input channel 1)
#TW2 1.5 0. 100. sec Washout time constant (input channel 2)
#TW3 0. 0. 100. sec Washout time constant (combined channels)
#A1 0. 0. 100. PSS numerator coefficient (first block)
#A2 0. 0. 100. PSS numerator coefficient (first block)
#A3 0.02 0. 100. PSS denominator coefficient (first block)
#A4 0. 0. 100. PSS denominator coefficient (first block)
#A5 0. 0. 100. PSS numerator coefficient (second block)
#A6 0. 0. 100. PSS numerator coefficient (second block)
#A7 0.02 0. 100. PSS denominator coefficient (second block)
#A8 0. 0. 100. PSS denominator coefficient (second block)
#VSTMAX 0.1 0. 1. pu Maximum PSS output
#VSTMIN -0.1 -1. 0. pu Minimum PSS output
#PPSSon 0.4 0 1. pu Generator MW threshold for PSS activation
#PPSSoff 0.2 0. 1. pu Generator MW threshold for PSS de-activation
Linking of the model PSS3C to a chosen synchronous machine model or rather an excitation system
model in the different PSS products is generally described in Linking Machine Controller Models
chapter.
4.56 PSS6C
The model PSS6C represents a dual-input power system stabilizer containing an output logic, which
depends on the generator active power. The block diagram of the model is shown in the following
figure.
88 April 2024
SIEMENS PSS SINCAL Models
Machine Controller Models
Selection of type of signal inputs SIG1 and SIG2 can be done by the parameters #ICS1 and #ICS2.
According to the choice, the inputs are appropriately linked to the signals, differentiating between the
application which uses the model. All state variables are set to zero at initialization.
The model PSS6C requires the following parameters for a proper parameterization of the function
blocks:
April 2024 89
PSS SINCAL Models SIEMENS
Machine Controller Models
Linking of the model PSS6C to a chosen synchronous machine model or rather an excitation system
model in the different PSS products is generally described in Linking Machine Controller Models
chapter.
4.57 PssELIN2
The model PssELIN2 represents a power system stabilizer, which is typically used with the excitation
system model ExcELIN2. The block diagram of the model is shown in the following figure.
The washout blocks cover the case, that the time constant is set to zero and therefore the appropriate
block has to be deactivated. The output logic block F(s) has the following functionality:
IF((#ppss.GE.2).AND.(#ppss.LE.4))THEN
Fs = -#apss*(Bs*(3-#ppss)+Vs*(1-#abspss3))
ELSE
Fs = #apss*(Bs*(1-#ppss)+Vs*(1-#abspss1))
ENDIF
Since this model contains a normalized power input PELEC, an APPUSR block has to be used in
order to differentiate between the usage in different tools:
IF(#APPUSR.EQ.1)THEN !CALLED BY PSS(R)E
Pe = PELEC*(SBASE/MBASE)
ELSE !CALLED BY PSS(R)NETOMAC/PSS(R)SINCAL
Pe = PELEC
ENDIF
The model PssELIN2 requires the following parameters for a proper parameterization of the function
blocks:
90 April 2024
SIEMENS PSS SINCAL Models
Machine Controller Models
#ppss 2 0 4 pu Coefficient
#apss 0.1 0 1 pu Coefficient
#psslim 0.1 0 1 pu PSS limiter
Linking of the model PssELIN2 to a chosen synchronous machine model or rather an excitation
system model in the different PSS products is generally described in Linking Machine Controller
Models chapter.
4.58 PssWECC
The model PssWECC is a dual input power system stabilizer according to the IEC model definition.
The EPRI model definition is PssWSCC. The block diagram of the model is shown in the following
figure.
Selection of type of signal inputs SIG1 and SIG2 can be done by the parameters #inputSignal1Type
and #inputSignal2Type. According to the choice, the inputs are appropriately linked to the signals,
differentiating between the application which uses the model. At model output, a voltage dependent
condition is given:
IF((VT.LE.(#vcu+VT0)).AND.(VT.GE.(#vcl+VT0)))THEN
PSS = VSS
ELSE
PSS = 0
ENDIF
The model PssWECC requires the following parameters for a proper parameterization of the function
blocks:
April 2024 91
PSS SINCAL Models SIEMENS
Machine Controller Models
Linking of the model PssWECC to a chosen synchronous machine model or rather an excitation
system model in the different PSS products is generally described in Linking Machine Controller
Models chapter.
4.59 PssWSCC
92 April 2024
SIEMENS PSS SINCAL Models
Machine Controller Models
The model PssWSCC is a dual input power system stabilizer according to the EPRI definition. The
official IEC model definition is PssWECC. The block diagram of the model is shown in the following
figure.
Selection of type of signal inputs SIG1 and SIG2 can be done by the parameters #inputSignal1Type
and #inputSignal2Type. According to the choice, the inputs are appropriately linked to the signals,
differentiating between the application which uses the model. At model output, a voltage dependent
condition is given:
IF((VT.LE.(#vcu+VT0)).AND.(VT.GE.(#vcl+VT0)))THEN
PSS = VSS
ELSE
PSS = 0
ENDIF
The model PssWSCC requires the following parameters for a proper parameterization of the function
blocks:
April 2024 93
PSS SINCAL Models SIEMENS
Machine Controller Models
Linking of the model PssWSCC to a chosen synchronous machine model or rather an excitation
system model in the different PSS products is generally described in Linking Machine Controller
Models chapter.
4.60 SCRX
The model SCRX represents a bus fed or solid fed static exciter. It is related to the ExcSCRX model.
The block diagram of the model is shown in the following figure.
By parameter #CSW it is decided whether terminal voltage ET or a fixed value of 1 is used for the
multiplication with variable S3. The block Negative Current Logic with the inputs XIFD and OUT as
well the output EFD contains a field current dependent signal selector by the following algorithm:
EFD = OUT
XAD = -(#RCFD*XIFD)
IF((XAD.GT.0.0).AND.(XAD.GT.OUT))THEN
EFD = XAD
ENDIF
The model SCRX requires the following parameters for a proper parameterization of the function
blocks:
94 April 2024
SIEMENS PSS SINCAL Models
Machine Controller Models
Linking of the model SCRX to a chosen synchronous machine model in the different PSS products
is generally described in Linking Machine Controller Models chapter.
4.61 SEXS
The model SEXS is a simplified excitation system model. The block diagram of the model is shown
in the following figure.
The model SEXS requires the following parameters for a proper parameterization of the function
blocks:
Linking of the model SEXS to a chosen synchronous machine model in the different PSS products
is generally described in Linking Machine Controller Models chapter.
4.62 STAB1
April 2024 95
PSS SINCAL Models SIEMENS
Machine Controller Models
The model STAB1 is a simple speed sensitive stabilizer model. The block diagram of the model is
shown in the following figure.
The limits of the output are derived using the equations #MAX = #HLIM and #MIN = – #HLIM. The
model STAB1 requires the following parameters for a proper parameterization of the function blocks:
Linking of the model STAB1 to a chosen synchronous machine model or rather an excitation system
model in the different PSS products is generally described in Linking Machine Controller Models
chapter.
4.63 STAB2A
The model STAB2A is a simple power sensitive stabilizer model. The block diagram of the model is
shown in the following figure.
Since this model contains a normalized power input PELEC, an APPUSR block has to be used in
order to differentiate between the usage in different tools:
IF(#APPUSR.EQ.1)THEN
s1 = -PEL*SBASE/MBASE !AUFGERUFEN VON PSS(R)E
ELSE
s1 = -PEL !AUFGERUFEN VON PSS(R)NETOMAC/PSS(R)SINCAL
ENDIF
96 April 2024
SIEMENS PSS SINCAL Models
Machine Controller Models
The limits of the output are derived using the equations #MAX = #HLIM and #MIN = – #HLIM. The
model STAB2A requires the following parameters for a proper parameterization of the function
blocks:
Linking of the model STAB2A to a chosen synchronous machine model or rather an excitation
system model in the different PSS products is generally described in Linking Machine Controller
Models chapter.
4.64 TGOV1
The model TGOV1 is a simple steam turbine model containing the turbine-governor droop (#R),
steam control valve characteristic (#T1, #VMAX, #VMIN), a lead-lag block representing the steam
motion through the turbine stages and reheater (#T2, #T3) as well as the speed deviation proportional
losses (#DT). The main output variable and connection to the synchronous machine model is the
mechanical power in MVA. The block diagram of the MVA based model is shown in the following
figure.
The model TGOV1 requires the following parameters for a proper parameterization of the function
blocks:
April 2024 97
PSS SINCAL Models SIEMENS
Machine Controller Models
Linking of the model TGOV1 to a chosen synchronous machine model in the different PSS products
is generally described in Linking Machine Controller Models chapter.
4.65 TGOV1DU
The model TGOV1DU is an extended version of the TGOV1 model. It enhances the standard model
by a dead band block as well as by the option of defining the parameters for another turbine rating
power #TRATE. The block diagram of the model is shown in the following figure.
The model TGOV1DU requires the following parameters for a proper parameterization of the function
blocks:
Linking of the model TGOV1DU to a chosen synchronous machine model in the different
PSS products is generally described in Linking Machine Controller Models chapter.
4.66 TGOV2
98 April 2024
SIEMENS PSS SINCAL Models
Machine Controller Models
The model TGOV2 represents a steam turbine-governor system with turbine-governor droop (#R),
steam control valve characteristic (#T1, #VMAX, #VMIN), reheater and fast valving characteristic
(#K, #T3, #TI, #TA, #TB, #TC). The main output variable and connection to the synchronous machine
model is the mechanical power in MVA base. The block diagram of the MVA based model is shown
in the following figure.
The model TGOV2 requires the following parameters for a proper parameterization of the function
blocks:
Linking of the model TGOV2 to a chosen synchronous machine model in the different PSS products
is generally described in Linking Machine Controller Models chapter.
4.67 UnderexcLimX1
April 2024 99
PSS SINCAL Models SIEMENS
Machine Controller Models
The model UnderexcLimX1 is an Allis-Chalmers minimum excitation limiter model. The block
diagram of the model is shown in the following figure.
The model UnderexcLimX1 requires the following parameters for a proper parameterization of the
function blocks:
4.68 URGS3T
The model URGS3T represents a gas turbine according to WECC. The main output variable and
connection to the synchronous machine model is the mechanical power PMECH in MVA. The block
diagram of the MVA based model is shown in the following figure.
The variable limiter sets the allowed rate of change in valve position depending on the valve position
and behavior:
IF(DV.GT.#LINC)THEN
RLIM = #LTRT
ELSE
RLIM = #RMX
ENDIF
The model URGS3T requires the following parameters for a proper parameterization of the function
blocks:
Linking of the model URGS3T to a chosen synchronous machine model in the different PSS products
is generally described in Linking Machine Controller Models chapter.
With these generic models, converters can be simulated in a simplified manner both for stationary
power flow calculation and for dynamic simulation in the time domain.
● BESS_WECC
● DER_A
● IBBLC
● IBNVC
● PV_WECC
● PVD1
5.1 BESS_WECC
The model BESS_WECC represents a 3-phase, symmetrically feeding battery energy storage
system according to WECC definition of February 2021. It consists of three parts for superimposed
park control (REPC_A), electrical control and storage behavior (REEC_C) as well as the
representation of the converter (REGC_B). You may activate (= 1) or deactivate (= 0) the controls
by the parameters #REPC_A and #REEC_C. The entire model provides different fundamental
functions, depending on the parameter settings:
● initialization and power provision in steady-state methods, based on power flow calculation
● voltage control at point of connection or at terminals
o with/without line compensation
o with/without reactive power droop
● constant reactive power or power factor control
● real controller behavior at overvoltage and undervoltage conditions
● dynamic voltage support by reactive current injection
● Fault-Ride-Through (FRT) with variable recovery of active current/power
● frequency containment contribution at overfrequency and underfrequency conditions
Block Diagram
In the following, the individual block diagrams are shown. They are serially interconnected depending
on the switch variables #REPC_A and #REEC_C. If #REEC_C = 1, then the electrical control model
is used, otherwise constant current control is applied. If #REPC_A = 1, then the park control model
is used, otherwise constant power/voltage control is applied.
REPC_A:
REEC_C:
REGC_B:
The detailed description of the model parts and their functionality can be seen in the referenced
documents.
The following blocks are specifically or particularly implemented. Their functionality can be directly
seen in the models, as they are accessible in the model library.
REEC_C Voltage Vt Usage of terminal voltage instead of a remote signal due to consistency
with REGC_B model
REEC_C Voltage Vt0 Usage of terminal voltage instead of a remote signal due to consistency
with REGC_B model
REEC_C Hysteresis dSmnh, Avoiding numerical oscillations around state of charge limits in battery
dSmxh energy storage by hysteresis blocks
REGC_B Iqrmax/min dIq3 Representation of the limited reactive current rate
Limiter
REGC_B rrpwr Limiter dIp3 Representation of the limited recovery of active current or power
REGC_B I2Vsource Ed, Eq Transformation of current source to voltage source
Parameters
The model BESS_WECC requires the following parameters to be characterized. Hereby, the
description contains prefixes p (for REPC_A), e (for REEC_C) and g (for REGC_B) for differentiation
of the parameters within the different model parts.
In order to catch some critical parameter input cases, equations are applied to the input parameters.
These guarantee, that the BESS_WECC model can be used for different network elements and zero
value inputs do not lead to simulation abort. New basis values are calculated for rated apparent
power, rated voltage. Power flow settings are related to these basis values.
$ Determine rated power #Snr
IF(#Sn.GT.0)THEN
#Pref = #Plf/#Sn ! Active power set-point [pu]
#Qref = #Qlf/#Sn ! Reactive power set-point [pu]
#Snr = #Sn
ELSE
IF(#Plf.NE.0)THEN ! #Plf rated if Sn = 0
#Pref = #Plf/ABS(#Plf)
#Qref = #Qlf/ABS(#Plf)
#Snr = ABS(#Plf)
ELSE
IF(#Qlf.NE.0)THEN ! #Qlf rated if Sn = 0 and #Plf = 0
#Pref = 0
#Qref = #Qlf/ABS(#Qlf)
#Snr = ABS(#Qlf)
ELSE ! Zero output if no rating possible
#Pref = 0
#Qref = 0
#Snr = 1
ENDIF
ENDIF
ENDIF
$ Get reciprocal of Snr for normalization of inputs
#Snr1 = 1/#Snr
$ Check whether model is used in variable shunt element or in converter
IF(#Ulf.GT.0)THEN
#Vn = #Ulf ! Variable shunt element
ELSE
IF(#UNE.GT.0)THEN
#Vn = #UNE ! converter with defined rated voltage
ELSE
#Vn = #UNN ! converter with nominal voltage
ENDIF
ENDIF
For the consideration of the state of charge (SOC), the model will take over the values from PSS
SINCAL, if they are entered in the converter dialogue. Otherwise, parameters #SOCini, #SOCmin
and #SOCmax are used:
$ Create SOC parameters
IF(#Emax.EQ.0)THEN ! Use parameter settings
#Bmax = #SOCmax
#Bmin = #SOCmin
#Bini = #SOCini
#T = #T
ELSE ! Use PSS SINCAL settings
#Bmax = 1.
#Bmin = #Emin/#Emax
#Bini = #Eact/#Emax
#T = #Emax/#Snr*3600
ENDIF
#dSmn = #Bini-#Bmax
#dSmx = #Bini-#Bmin
Based on the battery parameters, the limits for integrator dSOC are determined.
Initialization
As the model is active during power flow, the initialization of state variables is done parameter-based.
Thereby, all flags are considered which partially change pre-conditions. The program derive all the
other initial values from these pre-definitions, so that the model will start in a steady-state operating
point if no limits are violated.
1:Vtg = 1
$-------------------------------------------------------------------------------
$ REPC_A
$-------------------------------------------------------------------------------
$ Active power
Ppp = 0 ! P control proportional
Ppi = #Pref ! P control by set-point for plant/park
$ Reactive power
Qpp = 0 ! Q control proportional
IF(#Qflag.EQ.0)THEN ! Q control by set-point for REEC_C
IF(#Pfflag.EQ.0)THEN ! considering flags for control modes
Qpi = #Qref
ELSE
Qpi = 0
ENDIF
ELSE
IF(#Vflag.EQ.0)THEN
IF(#Pfflag.EQ.0)THEN
Qpi = Vt
ELSE
Qpi = 0
ENDIF
ELSE
IF(#Pfflag.EQ.0)THEN
Qpi = #Qref
ELSE
Qpi = 0
ENDIF
ENDIF
ENDIF
$
$-------------------------------------------------------------------------------
$ REEC_C
$-------------------------------------------------------------------------------
$ Active power branch
Pord = Pref ! Initialize by set-point for P from REPC_A
$ Reactive power branch
Vr1i = Vt0 ! Q control by bus voltage
Vr1p = 0 ! Q control proportional
Iqs2 = #Qref/Vtg ! Constant Q by required current
Iqs1i = #Qref/Vtg ! V control by required current
Iqs1p = 0 ! V control proportional
$ Storage model
dSOC = 0 ! Initial difference of battery storage
$
$-------------------------------------------------------------------------------
$ REGC_B
$-------------------------------------------------------------------------------
$ Active current
Ip = Ipcmd*Ipfac ! Initialite by set-point for P
$ Reactive current
Iq = Iqcmd ! Initialize by set-point for Q$
Linking and parametrizing of the model can be done using the data screen form of the appropriate
node element Converter (or Variable Shunt Element) in the tab Basic Data.
In the data screen form you can choose the power flow type as "Model voltage (P and Q)" and choose
between the different model types. Select "BOSL model" to use the model both in steady-state
calculation methods (LF) and dynamic calculation or "Dyn. Model" to use it only in dynamic
calculation.
Following input values (= parameters) for the model have to be inserted directly in the input data
mask in the tab Basic Data:
After that, it is possible to change the other model parameters, diverging from the default ones in the
model, in the Parameter tab. Please keep in mind, that parameters for the remote signal blocks
(#VndM.N, #IbrM.N and #Ibrm.B) are essential for a functioning model! You can directly put PSS
SINCAL node and element names into the dialogue.
If you are going to use the model more than once in your network model, then it is advisable to create
several parameter sets and to name it uniquely via Network Browser – Models – New in order to
simplify handling of models for different node elements. Afterwards, it is possible to assign the model
instance to one or more node elements. If the model instance is assigned to more than one node
element, parameter changes will apply to all of them if they have linked the same model.
Non-visible parameters, which in PSS SINCAL are provided automatically, in PSS NETOMAC have
to be assigned manually prior to the model call in section ##8.1 or [[Models_during_Loadflow]]:
@ #Plf = 0. ! Active power set-point [MW]
@ #Qlf = 0. ! Reactive power set-point [MVar]
@ #Rlf = 0. ! Internal resistance [Ohm]
@ #Xlf = 0.2 ! Internal reactance [Ohm]
@ #Sn = 10. ! Rated apparent power of network element [MVA]
@ #UNE = 10. ! Rated voltage of network element [kV]
@ #NAME = 'Name ' ! Name of model [str]
@ #ELNAME = 'Branch ' ! Name of impedance [str]
#.\BESS_WECC.xmac
These parameters are mandatory for a proper model functionality. For linking to the network model,
this voltage source based model basically needs to have an impedance branch (e.g. A line) with the
ID #ELNAME, to which a voltage source can be assigned, in section ##6 or [[Network]]. The #Rlf and
#Xlf values of the model need to be the same. The nominal voltage branch should be identically as
the provided hidden parameter #UNE to the model:
$1......12......23......3AA1....12....23....34....45....56....67...78...89...9ZZ
A#KNO1 #ELNAME 1. #Rlf #Xlf #UNE
5.2 DER_A
The model DER_A represents distributed energy resources (DER) in retail-scale (R-DER) or utility-
scale (U-DER) as aggregated DER positive sequence model. The intention is to use one aggregated
model to represent many distributed generators. It has the following main functionalities:
The network interface is a voltage source behind an impedance. The block diagram of the model is
shown in the following figure.
The detailed description for the model and the function can be obtained in the source document.
Following blocks (not standard blocks) show some program specific implementation or follow the
implementation guidelines given in the reference.
Switch:
Switch blocks (Qref1, Prefv, fI_filt2) switch the output depending on a binary input flag.
Qlf/Plf:
Calculates the value for pfaref based on the input parameters for the setpoint of the active and
reactive power.
𝑄𝑙𝑓/𝑃𝑙𝑓 𝑃𝑙𝑓 ≠ 0
𝑝𝑓𝑎𝑟𝑒𝑓 = { |
0 𝑃𝑙𝑓 = 0
#Plf and #Qlf are hidden parameters, which are provided by PSS SINCAL. In PSS NETOMAC these
parameters have to be defined manually prior to model call.
Implements the quadratic limitation of the currents with respect to the chosen value for #Pqflag (see
reference, specification 7. or Figure 2). Additionally, the value for Ipmin is set according to the type
(#typeflg to distinguish between generator or storage device).
Voltage Recovery:
Implements the time dependent partial tripping of subsets of the aggregated distributed generators
due to voltage deviations exceeding the chosen limits at the connection point (see reference,
specification 2.a. and Appendix C).
Implements the time dependent tripping due to frequency deviations at the connection point (see
reference, specification 2.b.).
I2VSource ROTATE:
Transforms the calculated set values for active and reactive current into an equivalent real and
imaginary part Ed0 and Eq0 of the voltage over the impedance of the grid interface. Therefore, the
rated apparent power #Snr of the device, the rated voltage at the node #Vn and the inserted
reactance #Xlf of the branch are considered, which are provided by the network element dialog box.
#𝑋𝑙𝑓
𝐸𝑑0 = 𝑉𝑡 − 𝐼𝑞 ×
#𝑉𝑛2
( )
#𝑆𝑛𝑟
#𝑋𝑙𝑓
𝐸𝑞0 = 𝐼𝑝 ×
#𝑉𝑛2
( )
#𝑆𝑛𝑟
The representing voltage phasor is then rotated by Vt_phi (voltage angle at the grid connection point)
and transformed back into real and imaginary part Ed and Eq for the GNE-V block.
Limiter:
Limiter with the output dIpsl implements the limits for the ramp rate of the active power depending
on the operating situation. This is done by limiting the proportional scaled difference between Ip and
Ipcmdl before the integrator block. This will lead to a linear ramp up (in generation/discharging case)
or ramp down (in charging case) of Ip in case of limitation.
The model DER_A requires the following parameters for a proper parameterization of the function
blocks:
In order to catch some critical parameter input cases, equations are applied to the input parameters.
These guarantee, that the DER-A model can be used for different network elements and zero value
inputs do not lead to simulation abort. New basis values are calculated for rated apparent power,
rated voltage. Power flow settings are related to these basis values.
$ Determine rated power #Snr
IF(#Sn.GT.0)THEN
#Pref = #Plf/#Sn ! Active power set-point [pu]
Linking and parametrizing of the model can be done using the data screen form of the appropriate
node element Converter (or Variable Shunt Element) in the tab Basic Data.
In the data screen form you can choose the power flow type as "Model voltage (P and Q)" and choose
between the different model types. Select "BOSL model" to use the model both in steady-state
calculation methods (LF) and dynamic calculation or "Dyn. Model" to use it only in dynamic
calculation.
Following input values (= parameters) for the model have to be inserted directly in the input data
mask in the tab Basic Data:
After that, it is possible to change the other model parameters, diverging from the default ones in the
model, in the Parameter tab.
If you are going to use the model more than once in your network model, then it is advisable to create
several parameter sets and to name it uniquely via Network Browser – Models – New in order to
simplify handling of models for different node elements. Afterwards, it is possible to assign the model
instance to one or more node elements. If the model instance is assigned to more than one node
element, parameter changes will apply to all of them if they have linked the same model.
Non-visible parameters, which in PSS SINCAL are provided automatically, in PSS NETOMAC have
to be assigned manually prior to the model call in section ##8.1 or [[Models_during_Loadflow]]:
@ #Plf = 0. ! Active power set-point [MW]
@ #Qlf = 0. ! Reactive power set-point [MVar]
@ #Xlf = 0.2 ! Internal reactance [Ohm]
@ #Sn = 10. ! Rated apparent power of network element [MVA]
@ #UNE = 10. ! Rated voltage of network element [kV]
@ #NAME = 'Name ' ! Name of model [str]
@ #ELNAME = 'Branch ' ! Name of impedance [str]
#.\DER_A.xmac
These parameters are mandatory for a proper model functionality. For linking to the network model,
this voltage source based model basically needs to have a reactance branch (e.g. X or A line) with
the ID #ELNAME, to which a voltage source can be assigned, in section ##6 or [[Network]]. The #Xlf
value of the model needs to be the same. The nominal voltage branch should be identically as the
provided hidden parameter #UNE to the model:
$1......12......23......3AA1....12....23....34....45....56....67...78...89...9ZZ
A#KNO1 #ELNAME 1. 0. #Xlf #UNE
5.3 IBBLC
The IBBLC ("Inverter Based Branch Load Control") model represents a battery energy storage
connected by a 3phase inverter to the AC grid in a simplified manner for steady-state and time-
domain analysis. It reduces all controls to basic functionalities of compensating active and reactive
current on a branch and neglects the storage capability of the network element. A typical network
implementation of IBBLC, reducing loading of a line, is shown below:
The model can be assigned to a symmetrical converter element with a rated apparent power
(translated to #Sn) for bidirectional power flow depending on the network state in power flow, time-
series and stability calculations.
Parameters
The model requires the following parameters to be characterized. Major parameters are the entries
related to the measurement branch (#I_mag.N and #I_mag.B), whose loading will be measured and
compensated. It is important to mention, that the entered node should be the one on the same side
of the branch as the IBBLC model in order to consider compensation in the right direction.
There are few more hidden parameters, which address additional input blocks (I_phi, V_phi), rating
(#Sn) as well as the operating point (#Plf, #Qlf) and limits (#Pmin, #Pmax, #Qmin, #Qmax). While
the last entries are provided automatically by PSS SINCAL, they have to be entered manually when
using this model in PSS NETOMAC.
Model Behavior
The loading of a branch element (e.g. line or transformer) is controlled within a certain user-defined
range by injection or consumption of active and reactive power by the converter element. This is
done according to the active or reactive portion of the total current. The energy storage which
consumes or provides the power is considered to be ideal without a detailed modelling of its internal
behavior.
The input signals of the model voltage and current angle as well as current magnitude are initially
filtered and processed for further usage. It results in a total current (I_magf) as well as in a directional
active (I) and a reactive (I.1) part of the current.
The block "f(load)" behaves like a function depending on the loading (total current divided by
maximum thermal current) as given by the characteristic:
f(load) [pu]
load [%]
-1 ch1 ch2
The output of this function is multiplied by the active (fP) or reactive (fQ) portion of the current, in
order to distinguish two different branches in the subsequent structure. Both portions are direction-
sensitive, means they are positive (reactive part negative) if flowing to or negative (reactive part
positive) if flowing from the converter element. Each of the products are then again multiplied by the
operating point (#Plf, #Qlf), by which a base value for compensation can be defined by user for the
converter element.
Before providing these power values to the reduced representation (PT1 blocks) of inverters, they
are limited either by rated apparent power (Sn) or by provided limits (Pmin, Pmax, Qmin, Qmax) and
additionally prioritized by flag #flagQ:
$ Getting input values from "Limits" tab
Qmint2 = #Qmin
Qmaxt2 = #Qmax
Pmint2 = #Pmin
Pmaxt2 = #Pmax
$ Calculating limits based on rated apparent power
IF(#flagQ.EQ.1)THEN ! Q priority
Qmint1 = -Srat
Qmaxt1 = Srat
tmpSQ = Srat*Srat - Qcmd*Qcmd
Pmaxt1 = SQRT(tmpSQ)
Pmint1 = -Pmaxt1
ELSE ! P priority
Pmint1 = -Srat
Pmaxt1 = Srat
tmpSP = Srat*Srat - Pcmd*Pcmd
Qmaxt1 = SQRT(tmpSP)
Qmint1 = -Qmaxt1
ENDIF
$ Selecting more restricting value for limitation
Pmin MAX Pmint1Pmint2
Pmax MIN Pmaxt1Pmaxt2
Qmin MAX Qmint1Qmint2
Qmax MIN Qmaxt1Qmaxt2
The block "LOG (.lst)" is deactivated by default. It can be activated in the GMB via the pop-up menu
of the block and then writes the defined internal signals of the model during simulation into the bosl.lst
file of the directory LOG of the project.
The model can be manually assigned to a converter with the Power Flow Type Model power and
the Model Type BOSL model.
● The parameters #Plf, #Qlf, #Sn are set by input values in Basic Data in PSS SINCAL.
● The parameters #Pmin, #Pmax, #Qmin, #Qmax are set by input values in Limits in PSS
SINCAL, if activated.
● The parameters #Ith_max, #ch1, #ch2, #Tpt1, #Tf are set according to their default values and
can be adapted by the user in the Parameter dialog box of the model.
● For #I_mag.N, #I_mag.B the user has to set the name of the branch and the name of a node
where an according terminal is connected to (branch and node can be freely chosen in the
network, but be aware of the right compensation direction) for the loading input in the
Parameter dialog box.
Non-visible parameters, which in PSS SINCAL are provided automatically for initialization and basic
characterization, in PSS NETOMAC have to be assigned manually prior to the model call in section
##8.1 or [[Models_during_Loadflow]]:
@ #NAME = 'Name ' ! Model name [Text]
@ #I_mag.N = 'Node ' ! Node on IBBLC side [Text]
@ #I_mag.B = 'Branch ' ! Measurement Branch [Text]
@ #Plf = 0. ! {input data} P [MW]
@ #Qlf = 0. ! {input data} Q [MVar]
@ #Sn = 1e6 ! {input data} Rated apparent power [MVA]
#.\IBBLC.xmac
These parameters are mandatory for a proper model functionality. You can add further parameters,
which deviate from default values, before model call. For linking to the network model, this GNE-P/Q
output based model basically needs to have a constant PQ definition (V line) with the ID #NAME, to
which it can be assigned, in section ##6 or [[Network]]. Since this model overwrites the P and Q
values of this branch, only the ID needs to be the same and the connection needs to be correct:
$1......12......23......3AA1....12....23....34....45....56....67...78...89...9ZZ
V#KNO1 #NAME #Plf #Qlf 1.
5.4 IBNVC
The IBNVC (Inverter Based Node Voltage Control) model represents a battery energy storage
connected by a 3phase inverter to the AC grid in a simplified manner for steady-state and time-
domain analysis. It reduces all controls to basic functionalities of supporting a node voltage by active
and reactive power injection and neglects the storage capability of the network element. A typical
network implementation of IBNVC by a converter is shown below:
The model can be assigned manually to a symmetrical converter element for bidirectional power flow
depending on the network state in power flow and stability calculations. The functional behavior
represents a voltage droop control based on active and reactive power.
Parameters
The model requires the following parameters to be characterized. Major parameter is the entry
related to the measurement node (#V_node.N), whose voltage will be measured and processed.
There are few more hidden parameters, which address rating (#Sn) as well as the operating point
(#Plf, #Qlf) and limits (#Pmin, #Pmax, #Qmin, #Qmax). While the last entries are provided
automatically by PSS SINCAL, they have to be entered manually when using this model in PSS
NETOMAC.
Model Behavior
The voltage at a node is controlled by increasing or decreasing the active and reactive power
injection/consumption of the element. The energy storage which consumes or provides the power is
considered to be ideal without a detailed modelling of its internal behavior.
Measured voltage at a specific node (defined by #V_node.N) is initially filtered in this model. The
block "f(V)" behaves like a function depending on the filtered voltage as given by the characteristic:
f(V) [pu]
V [pu]
The output of this function is multiplied by the operating point (#Plf, #Qlf), by which a base value for
voltage support can be defined by user for each converter element. Depending on R/X ratios in the
network it can be based more on active or more on reactive power injection/consumption.
Before providing these power values to the reduced representation (PT1 blocks) of inverters, they
are limited either by rated apparent power (Sn) or by provided limits (Pmin, Pmax, Qmin, Qmax) and
additionally prioritized by flag #flagQ:
$ Getting input values from "Limits" tab
Qmint2 = #Qmin
Qmaxt2 = #Qmax
Pmint2 = #Pmin
Pmaxt2 = #Pmax
$ Calculating limits based on rated apparent power
IF(#flagQ.EQ.1)THEN ! Q priority
Qmint1 = -Srat
Qmaxt1 = Srat
tmpSQ = Srat*Srat - Qcmd*Qcmd
Pmaxt1 = SQRT(tmpSQ)
Pmint1 = -Pmaxt1
ELSE ! P priority
Pmint1 = -Srat
Pmaxt1 = Srat
tmpSP = Srat*Srat - Pcmd*Pcmd
Qmaxt1 = SQRT(tmpSP)
Qmint1 = -Qmaxt1
ENDIF
$ Selecting more restricting value for limitation
Pmin MAX Pmint1Pmint2
Pmax MIN Pmaxt1Pmaxt2
Qmin MAX Qmint1Qmint2
Qmax MIN Qmaxt1Qmaxt2
The block "LOG (.lst)" is deactivated by default. It can be activated in the GMB via the pop-up menu
of the block and then writes the defined internal signals of the model during simulation into the bosl.lst
file of the directory LOG of the project.
The model can be manually assigned to a converter with the Power Flow Type Model power and
the Model Type BOSL model.
● The parameters #Plf, #Qlf, #Sn are set by input values in Basic Data in PSS SINCAL.
● The parameters #Pmin, #Pmax, #Qmin, #Qmax are set by input values in Limits in PSS
SINCAL, if activated.
● The parameters #cl2, #cl1, #ch1, #ch2, #Tpt1, #Tf are set according to their default values and
can be adapted by the user in the Parameter dialog box of the model.
● For #V_node.N the user has to set the name of the measurement node in the Parameter
dialog box.
Non-visible parameters, which in PSS SINCAL are provided automatically for initialization and basic
characterization, in PSS NETOMAC have to be assigned manually prior to the model call in section
##8.1 or [[Models_during_Loadflow]]:
@ #NAME = 'Name ' ! Model name [Text]
@ #V_node.N = 'Node ' ! Measurement node [Text]
@ #Plf = 0. ! {input data} P [MW]
@ #Qlf = 0. ! {input data} Q [MVar]
@ #Sn = 1e6 ! {input data} Rated apparent power [MVA]
#.\IBNVC.xmac
These parameters are mandatory for a proper model functionality. You can add further parameters,
which deviate from default values, before model call. For linking to the network model, this GNE-P/Q
output based model basically needs to have a constant PQ definition (V line) with the ID #NAME, to
which it can be assigned, in section ##6 or [[Network]]. Since this model overwrites the P and Q
values of this branch, only the ID needs to be the same and the connection needs to be correct:
$1......12......23......3AA1....12....23....34....45....56....67...78...89...9ZZ
V#KNO1 #NAME #Plf #Qlf 1.
5.5 PV_WECC
The model PV_WECC represents a 3-phase, symmetrically feeding photovoltaic system according
to WECC definition of November 2021. It consists of three parts for superimposed park control
(REPC_A), electrical control (REEC_D) as well as the representation of the converter (REGC_B).
You may activate (= 1) or deactivate (= 0) the controls by the parameters #REPC_A and #REEC_D.
The entire model provides different fundamental functions, depending on the parameter settings:
● initialization and power provision in steady-state methods, based on power flow calculation
● voltage control at point of connection or at terminals
o with/without line compensation
o with/without reactive power droop
● constant reactive power or power factor control
● real controller behavior at overvoltage and undervoltage conditions
● dynamic voltage support by reactive current injection
● Fault-Ride-Through (FRT) with variable recovery of active current/power
● frequency containment contribution at overfrequency and underfrequency conditions
● freezing active and reactive current commands in post-fault operation
● converter infeed blocking at specified voltage limits
● voltage dependent current limitation and priorization options
Block Diagram
In the following, the individual block diagrams are shown. They are serially interconnected depending
on the switch variables #REPC_A and #REEC_D. If #REEC_D = 1, then the electrical control model
is used, otherwise constant current control is applied. If #REPC_A = 1, then the park control model
is used, otherwise constant power/voltage control is applied.
REPC_A:
REEC_D:
REGC_B:
The detailed description of the model parts and their functionality can be seen in the referenced
documents.
The following blocks are specifically or particularly implemented. Their functionality can be directly
seen in the models, as they are accessible in the model library.
Parameters
The model PV_WECC requires the following parameters to be characterized. Hereby, the description
contains prefixes p (for REPC_A), e (for REEC_D) and g (for REGC_B) for differentiation of the
parameters within the different model parts.
In order to catch some critical parameter input cases, equations are applied to the input parameters.
These guarantee, that the PV_WECC model can be used for different network elements and zero
value inputs do not lead to simulation abort. New basis values are calculated for rated apparent
power, rated voltage. Power flow settings are related to these basis values.
$ Determine rated power #Snr
IF(#Sn.GT.0)THEN
Initialization
As the model is active during power flow, the initialization of state variables is done parameter-based.
Thereby, all flags are considered which partially change pre-conditions. The program derive all the
other initial values from these pre-definitions, so that the model will start in a steady-state operating
point if no limits are violated.
1:Vtg = 1
$-------------------------------------------------------------------------------
$ REPC_A
$-------------------------------------------------------------------------------
$ Active power
Ppp = 0 ! P control proportional
Ppi = #Pref ! P control by set-point for plant/park
$ Reactive power
Qpp = 0 ! Q control proportional
IF(#Qflag.EQ.0)THEN ! Q control by set-point for REEC_C
Linking and parametrizing of the model can be done using the data screen form of the appropriate
node element Converter (or Variable Shunt Element) in the tab Basic Data.
In the data screen form you can choose the power flow type as "Model voltage (P and Q)" and choose
between the different model types. Select "BOSL model" to use the model both in steady-state
calculation methods (LF) and dynamic calculation or "Dyn. Model" to use it only in dynamic
calculation.
Following input values (= parameters) for the model have to be inserted directly in the input data
mask in the tab Basic Data:
After that, it is possible to change the other model parameters, diverging from the default ones in the
model, in the Parameter tab. Please keep in mind, that parameters for the remote signal blocks
(#VndM.N, #IbrM.N and #Ibrm.B) are essential for a functioning model! You can directly put PSS
SINCAL node and element names into the dialogue.
If you are going to use the model more than once in your network model, then it is advisable to create
several parameter sets and to name it uniquely via Network Browser – Models – New in order to
simplify handling of models for different node elements. Afterwards, it is possible to assign the model
instance to one or more node elements. If the model instance is assigned to more than one node
element, parameter changes will apply to all of them if they have linked the same model.
Non-visible parameters, which in PSS SINCAL are provided automatically, in PSS NETOMAC have
to be assigned manually prior to the model call in section ##8.1 or [[Models_during_Loadflow]]:
@ #Plf = 0. ! Active power set-point [MW]
@ #Qlf = 0. ! Reactive power set-point [MVar]
@ #Rlf = 0. ! Internal resistance [Ohm]
@ #Xlf = 0.2 ! Internal reactance [Ohm]
@ #Sn = 10. ! Rated apparent power of network element [MVA]
@ #UNE = 10. ! Rated voltage of network element [kV]
@ #NAME = 'Name ' ! Name of model [str]
@ #ELNAME = 'Branch ' ! Name of impedance [str]
#.\PV_WECC.xmac
These parameters are mandatory for a proper model functionality. For linking to the network model,
this voltage source based model basically needs to have an impedance branch (e.g. A line) with the
ID #ELNAME, to which a voltage source can be assigned, in section ##6 or [[Network]]. The #Rlf and
#Xlf values of the model need to be the same. The nominal voltage branch should be identically as
the provided hidden parameter #UNE to the model:
$1......12......23......3AA1....12....23....34....45....56....67...78...89...9ZZ
A#KNO1 #ELNAME 1. #Rlf #Xlf #UNE
5.6 PVD1
The model PVD1 represents distributed energy resources (DER) in retail-scale (R-DER) or utility-
scale (U-DER) as aggregated DER positive sequence model. It is known as the predecessor of
DER_A model. The intention is to use one aggregated model to represent many distributed
generators neglecting the time constants of the controls. It has the following main functionalities:
The network interface is a current source. The block diagram of the model is shown in the following
figure.
The detailed description for the model and the function can be obtained in the source document.
Since this document does not exactly point out some specific aspects, the following points clarify the
modeling assumptions, which can potentially lead to differences compared to other simulation
software:
● Filter time constant #Tf is applied to all input signals, not only to frequency.
● Before injecting Ip and Iq by the current source, these values are processed by logics for high
and low voltage. This step is only indicated but not explained in the reference document.
● Controlled node for voltage and frequency is the same as the reference node for the control
coordinate system. Using this model in PSS SINCAL, this node will be set by the parameter
#KNO1. Between this node and the displayed node in network diagram, there is a neglectable
resistance for plotting and switching purposes.
● Since the current input is in pu related to SBASE and this one is different from tool to tool,
model equations consider a factor #SB1 in order to get the same value in all tools:
IF(#APPUSR.EQ.0)THEN
IF(#Sn.NE.0)THEN
#SB1 = 1./#Sn
ELSE
#SB1 = 1.
ENDIF
ELSE
IF(#Sn.NE.0)THEN
#SB1 = #SBASE/#Sn
ELSE
#SB1 = #SBASE
ENDIF
ENDIF
● Invalid input values for the rated apparent power #Sn are corrected within normalization of load
flow parameters for active and reactive power (#Plf and #Qlf in MW and Mvar):
IF(#Sn.NE.0)THEN
#Pref = #Plf/#Sn
#Qref = #Qlf/#Sn
ELSE
#Pref = #Plf
#Qref = #Qlf
ENDIF
Following blocks (not standard blocks) show some program specific implementation or follow the
implementation guidelines given in the reference.
Implements the quadratic limitation of the currents with respect to the chosen value for #Pqflag. It
enables prioritization of active or reactive current.
Voltage Recovery:
Implements the partial tripping of subsets of the aggregated distributed generators due to voltage
deviations exceeding the chosen limits at the connection point. By #vrrecov the subset of reclosing
generators at voltage recovery is defined.
Frequency Recovery:
Implements the partial tripping of subsets of the aggregated distributed generators due to frequency
deviations exceeding the chosen limits at the connection point. By #frrecov the subset of reclosing
generators at frequency recovery is defined.
The model PVD1 requires the following visible parameters for a proper parameterization of the
function blocks:
Furthermore, there are some invisible parameters for initialization (#Plf, #Qlf) and characterization
(#Sn, #FNET) of the distributed energy resource.
Link and parametrize the model using the data screen form of the appropriate node element
Converter in the tab Basic Data. In the data screen form you can choose the load flow type as
"Model current" and between the different model types. Select "BOSL model" to use the model both
in stationary calculation methods (LF) and dynamic calculation or "Dyn. Model" to use it only in
dynamic calculation.
Following input values (=parameters) for the model have to be inserted directly in the input data mask
in the tab Basic Data:
Parameter #FNET will be set by global settings. After that and after clicking on “Edit model”, it is
possible to change the other model parameters, diverging from the default ones in the model, in the
Parameter tab.
If you are going to use the model more than once in your network model, then it is advisable to create
several model instances with name the model via Network Browser – Models – New in order to
simplify handling of models for different node elements. Afterwards, it is possible to assign the model
instance to one or more node elements. If the model instance is assigned to more than one node
element, parameter changes will apply to all of them if they have linked the same model.
Non-visible parameters, which in PSS SINCAL are provided automatically for initialization and basic
characterization, in PSS NETOMAC have to be assigned manually prior to the model call in section
##8.1 or [[Models_during_Loadflow]]:
@ #Plf = 0. ! Active power set-point [MW]
@ #Qlf = 0. ! Reactive power set-point [MVar]
These parameters are mandatory for a proper model functionality. You can add further parameters,
which deviate from default values, before model call.
The BOSL Interpreter of the PSS SINCAL Platform independently executes models such as in the
schema shown and makes it possible for the calculation cores of the PSS products to interact with
the models via the available interfaces by means of input and output signals.
Besides the native XMAC or MAC models created with the Graphical Model Builder (GMB) in ASCII
code format, integrated subsystems or subroutines containing a DLL (Dynamic Link Library) can also
be included. These DLL files can be implemented and compiled by the user in other programming
languages (e.g. c, c++ etc.), or generated through the use of automatic code generation from other
software tools (e.g. MATLAB/Simulink) and then easily integrated in the XMAC or MAC models, such
as shown in the following two illustrations.
The internal structure of this type of DLL does not have to be known. This feature has the following
benefits:
● Use of complex data structures, enhanced possibilities to input and output data in/out of the
model, as well as concepts for coupling simulations (e.g. using concepts such as "Shared
Memory" or "Named Pipes").
The following describes the two interfaces IEC DLL and EXTERN DLL and shows how these DLLs
can be used and assigned parameters in BOSL models. The following sections refer to the example
network (Example DLL) as an illustration.
The description of the interface in this documentation and in the supplied example is based on c
code. There are furthermore no restrictions to the creation of DLL subsystems based on
implementations in other programming languages (e.g. Fortran, c++, Python, …).
The description of the IEC DLL as a block diagram is shown in the following illustration. The
parameters are scalar. However, input and output signals can be one- (width = 1) or multi-
dimensional arrays (width > 1).
To support the interface, the IEC DLL has structures containing information on the DLL as well as
information describing the inputs, outputs and parameters. It also provides functions that are called
by the simulation environment in order to integrate the DLL in the simulation sequence.
The structures of the DLL include the following information that is required for the correct integration
of the DLL in a model:
The appropriate structure of the c code for the inputs and parameters is illustrated in the example
below.
The complete list of data structures and functions of the ESE interface are described in detail in the
standard and can also be viewed in the implementation (source code) of the example supplied (see
chapter GMB Model with DLL Subsystems in the Examples Electrical Networks Manual.
During the individual steps of the simulation (initialization, power flow, simulation, …) the appropriate
functions of the DLL are called by the simulation environment. The sequence of function calls of the
ESE interface is illustrated in the following program extract. An IEC DLL is thus treated by the BOSL
Interpreter according to this sequence.
// --- Initialization ---
S = Model GetInfo() // Static model information to configure the environment.
M = Model_Instance(Solver, Ta) // Create instance, use internal (1) or external (0) solver,
// set sample time.
Model_CheckParameters(M) // Check parameters.
The use of sampling time and frequency is an important point in the integration of
subroutines/subsystems in a model. Two options are available for the BOSL Interpreter for
configuring the sampling time of a DLL block for the IEC DLL. A description of the options is provided
in the chapter Use with the Sampling Time Step.
The special DLL_IEC block enables the use of an IEC DLL as one or several subsystems in a BOSL
model. The following describes the concept of the integration up to the complete workflow of the
embedding.
The concept of the integration of this DLL type is based on the use of two model files: The inner
macro and the outer macro. The outer macro here is the BOSL model edited by the user in the GMB
or the text editor.
The inner macro is a MAC file (ASCII), which links the DLL file (.dll) to the inputs and outputs and
transfers the parameters. The DLL itself contains the appropriate system behavior of the subsystem;
e.g. as shown in the following illustration, the simplified simulation of an active and reactive power
control circuit.
The MAC file (for the structure of this example, see the illustration below) must as the inner macro
have the same name as the DLL itself (e.g. Example_DLL.mac for the DLL Example_DLL.dll) and
be located in the same directory. The (automatic) generation of the inner macro file is described in
the relevant sections of the documentation describing the process for integrating in the MAC Models
or XMAC Models (GMB).
The elements of the inner macro are described in the following table.
[Link] List of the input signals of the DLL (prefix "IMPORT_") and list of the output
signals of the DLL (prefix "EXPORT_")
[Data] Name, default values of the parameters, limit values and descriptions.
Note: The default values for the parameters are only used if parameters are not
overwritten by the outer macro.
[Equations] Additional equations for parameters (optional)
[End]
Lines Name of the DLL (incl. file suffix)
HZ1: Sampling time step (#DT)
HZ1, HZ2, …: Parameter (#P1, …)
(optionally other lines with parameters in HZ1, …)
The graphic below shows the inner macro of the IEC DLL used in the application example.
In the outer macro, the inner macro is then embedded as a module once or multiple times in the
context of the inputs, outputs, equations and model parameters. These are defined as local
parameters which are valid for the next macro call and which can overwrite preset default values
(with @DEFAULT@).
The modelling of signals in BOSL is based on scalar numerical signals (type double). If the DLL
contains input and output signals in the form of arrays, these are converted to individual scalar signals
which can then be connected in the model with scalar signals.
If the value of the LoadFlowFlag is set to "1", it is assumed that the DLL also provides a function that
is called in the power flow. When the DLL is embedded, this is checked and set via the "yes/no"
attribute for "Loadflow" in the [Version] section.
The DLL can be used in the simulation in two different variants in relation to the sampling time step.
The difference is in whether the integrated DLL has the ability to call itself or depends on the call of
the outer macro. A deviation from the two methods particularly occurs in the following cases:
● if the BOSL Interpreter calls the outer macro several times as part of the Korrektor procedure,
● if discontinuities are detected and therefore only half a time step is calculated, or
● if a user-defined step width adjustment is carried out in a simulation run.
The standard definition of the DLL subsystem requires a fixed time step of the DLL, for which the
value itself contains this as a property (Property: FixedStepBaseSampleTime). To ensure the call is
executed with a fixed time step the integrated DLL is treated as a sampling controller (see chapter
Sampling Controllers, Equidistant Time Step in the PSS NETOMAC Procedure Manual) with the
appropriate sampling frequency and at the end of each complete simulation step.
As soon as the DLL is embedded in the GMB (when the inner macro is generated) the value
(property: FixedStepBaseSampleTime) is read out (red arrow) and is set as a default value for the
#DT parameter in the inner macro. The value entered for #DT is then used as the sampling time step
for calling the DLL as a sampling controller in the inner macro (blue arrow). At the same time, it is
transferred to the DLL as input Ta, so that this can be used internally (e.g. for the implementation of
integrator blocks).
The value for #DT can be overwritten from the outer macro (green arrow), in order for example to
use the value of the fixed simulation time step #SDT also as the value for #DT by means of an
equation.
In this variant, a possible variation of the time step length in PSS NETOMAC during the integration
no longer has an effect on the sampling of the DLL. This can cause the call of the DLL to no longer
be synchronous with the time step (changing during the simulation). In this case, the input and output
values of the DLL are interpolated in order to calculate a value for these signals for the variable time
step of the simulation.
To avoid the behavior described in variant 1, the time step of the outer macro can also be used as
the time step for calling the DLL, so that the call of the outer macro and the DLL integrated in the
inner macro are synchronized. This makes it possible to avoid the asynchronous call and the
interpolation.
However, this requires an implementation of the DLL that supports the call with the variable time step
length by adjusting the internal calculation. This must be ensured by the DLL developer.
In order to use this variant, it is possible to manually change the value for FixedTimeStep in the inner
macro (.mac) to "no" after its generation.
The DLL file must be stored in the same directory as the MAC file of the inner macro.
The search for the DLL and the inner macro file is carried out by default in the directory containing
the outer macro. It is also possible here to separate 32-bit DLLs from the 64-bit DLLs by using the
subdirectories "DLL" and "DLL64". These must store both the inner macro as well as the
corresponding 32-bit or 64-bit DLL.
The special IEC DLL block is used to integrate an IEC DLL in the GMB (XMAC model).
For this the Insert Special Block function is activated in the Model Editor by clicking the appropriate
button in the toolbar.
This opens a dialog box for opening files. After navigating to the directory of the DLL and selecting
the DLL file, an IEC DLL block is generated in the Model Editor.
The inner macro is generated automatically by the GMB as a MAC file in the directory of the DLL file.
Suitable write permissions must be obtained by the user beforehand. The file name of the MAC file
is taken here from the name of the DLL file. Already existing MAC files with this name in the directory
are overwritten.
The connections of the inputs and outputs are then made in the input screen form in the Topology
tab and the parameters are entered in the Data tab.
Note: The # names of the variables can be used directly in order to link variables from the
parameter list of the model (outer macro) with the DLL parameters.
To manually integrate an IEC DLL in a MAC file (outer macro), the conversion and thus generation
of the inner macro is carried out manually in the native GUI of PSS NETOMAC.
The generation of the inner macro can be started via Tools – Conversations – Convert IEC DLL.
This opens a dialog box for opening files. After navigating to the directory of the DLL and selecting
the DLL file, the MAC file (inner macro) is automatically generated in the same directory. Suitable
write permissions must be obtained by the user beforehand. The inner macro can then be integrated
as a module in any outer macro (.mac). The following illustration shows an example of the integration
in the code of a MAC file.
An application example of a model with an integrated IEC DLL subsystem is provided with the
installation and is described in the Examples Electrical Networks Manual, chapter GMB Model with
DLL Subsystems.
The EXTERN BOSL block makes it possible to integrate a DLL of type EXTERN DLL both in XMAC
models (GMB) as well as in MAC models (ASCII). The EXTERN block is called directly like all other
blocks during the execution of a model. As the call of the DLL is not wrapped (without an additional
inner macro and sampling controller as with IEC DLL), the integration in the processes and the
sampling is carried out directly from the model (outer macro), in which the DLL is integrated. It is then
up to the user whether the DLL inside a model is treated like a sampling controller with a fixed time
step in the simulation process, runs through the correction process or is called at the end of a
simulation step.
No internal static structures with information on the DLL exist for an EXTERN DLL. The DLL of type
EXTERN DLL (unlike the IEC DLL) provides a single function (EXTERN) that can be externally called,
which is then called by the BOSL Interpreter.
When the EXTERN function is called, the following parameters are transferred, which can be used
in the DLL to enable an implementation according to the calculation type as well as a time response
and much more.
Parameter Description
char* psName Name of the calling function
(second line of the EXTERN block, column NAME3)
int* piNumber Index (consecutive numbering, if several DLLs of type EXTERN are used)
int* piInMax Length of the input arrays X0, X1, which are assigned to the block in the model
Inside a model, a DLL of type EXTERN DLL is integrated via the interface directly in the model as a
subroutine.
The DLL is integrated directly in a model by connecting the input and output signals. The number of
inputs and outputs of the DLL must be known to the user as the DLL itself does not provide any
information about this that can be called up.
The parameters (e.g. #t1 and #t2) of the subroutine can be transferred as inputs and also as
constants. The following primarily covers the first option.
The use of signal arrays is not implemented in the EXTERN DLL interface. The signals in the BOSL
are scalar numerical values (double data type). Inputs and output signals which are transferred to
the DLL therefore comply with this data type.
To enable a suitable implementation in the DLL of the behavior of the subsystem for the different
calculation types/steps, the call of the DLL by the BOSL Interpreter always transfers the current
calculation mode (piMode). The numbers for the piMode parameter are shown in the following table.
piMode Description
1 Initialization
2 Power flow
3 Simulation
4 Reset
There are four types of call. Before and at the beginning of the calculation, a DLL of type EXTERN
DLL is called during the initialization and at the end with the release (in order to release the allocated
memory). During the calculation, the subroutine is called in the power flow (however, only if the model
is also called in the power flow) and in the simulation (stability, EMT) and piMode transferred
accordingly.
Note: The BOSL Interpreter does not check a DLL of type EXTERN DLL for whether the required
functions (e.g. adequate implementation for the power flow) are provided. This must be taken into
consideration by the DLL developer and documented, in order to enable the correct use of the DLL
(without source code).
The DLL subroutine is called in the power flow calculation provided that the model containing it is
also called in the power flow. The value for piMode then enables a suitable function for the behavior
in the power flow to be implemented in the DLL.
Note: In the power flow, the input and output values of the DLL are exchanged with the model via
the signals of the values for the previous time step (X0 and Y0).
The sampling of the DLL is synchronized with the model containing it (outer macro).
Note: Depending on the integration time of the model (integration type), the DLL is called several
times if the controller integration "During the network iteration" is carried out. The use of a multiple
DLL call must be considered in the implementation of the DLL (e.g. for blocks with a time response
inside the DLL).
The calculation of the time step when the DLL is called and its length can be carried out inside the
DLL based on T0 and T1.
The search for the DLL file is carried out by default in the directory in which the calling macro is
located. It is also possible here to separate 32-bit DLLs from the 64-bit DLLs by using the
subdirectories "DLL" and "DLL64". These must store the corresponding 32-bit or 64-bit DLL.
The special EXTERN DLL block is used to integrate an EXTERN DLL in the GMB (XMAC model).
For this the Insert Special Block function is activated in the Model Editor by clicking the appropriate
button in the toolbar.
An EXTERN DLL block is generated in the model graphic. The marking points of the block for
connecting signals are not displayed until the input and output signals are entered in the input screen
form. The file name (including file suffix *.dll) is entered in the input screen form of the block in the
DLL File field of the Topology tab. The name of the block (up to 8 freely selectable characters, then
transferred as psName at the call) is entered in the Block name field.
The signals of the model are connected to the DLL in the Inputs and Outputs tabs. After the entry,
the marking points for creating the graphical connections to the inputs and outputs of the other blocks
are provided for the signals.
Note: The number of input and output signals can only be provided for the user in a documentation
or by means of the source code of the DLL as they are not read from the DLL.
The manual integration of a DLL of type EXTERN DLL in a MAC model is carried out with the
EXTERN block. The description of the EXTERN block is provided in the PSS NETOMAC Procedure
Manual in chapter Control Blocks, Special Functions under EXTERN – User Defined Subroutine.
An application example of a model with an integrated EXTERN DLL subroutine is provided with the
installation and is described in the Examples Electrical Networks Manual, chapter GMB Model with
DLL Subsystems.