CGMES_3_0_0
Loading...
Searching...
No Matches
CIMPP::RegulatingControl Class Reference

Specifies a set of equipment that works together to control a power system quantity such as voltage or flow. Remote bus voltage control is possible by specifying the controlled terminal located at some place remote from the controlling equipment. The specified terminal shall be associated with the connectivity node of the controlled point. The most specific subtype of RegulatingControl shall be used in case such equipment participate in the control, e.g. TapChangerControl for tap changers. For flow control, load sign convention is used, i.e. positive sign means flow out from a TopologicalNode (bus) into the conducting equipment. The attribute minAllowedTargetValue and maxAllowedTargetValue are required in the following cases: - For a power generating module operated in power factor control mode to specify maximum and minimum power factor values; - Whenever it is necessary to have an off center target voltage for the tap changer regulator. For instance, due to long cables to off shore wind farms and the need to have a simpler setup at the off shore transformer platform, the voltage is controlled from the land at the connection point for the off shore wind farm. Since there usually is a voltage rise along the cable, there is typical and overvoltage of up 3-4 kV compared to the on shore station. Thus in normal operation the tap changer on the on shore station is operated with a target set point, which is in the lower parts of the dead band. The attributes minAllowedTargetValue and maxAllowedTargetValue are not related to the attribute targetDeadband and thus they are not treated as an alternative of the targetDeadband. They are needed due to limitations in the local substation controller. The attribute targetDeadband is used to prevent the power flow from move the tap position in circles (hunting) that is to be used regardless of the attributes minAllowedTargetValue and maxAllowedTargetValue. More...

#include <RegulatingControl.hpp>

Inheritance diagram for CIMPP::RegulatingControl:
Collaboration diagram for CIMPP::RegulatingControl:

Public Member Functions

const char * debugString () const override
const std::list< std::string > & getAttributeNames () const override
const std::string & getClassNamespaceUrl () const override
const std::string & getAttributeNamespaceUrl (const std::string &attrName) const override
const std::list< CGMESProfile > & getPossibleProfiles () const override
const CGMESProfile & getRecommendedProfile () const override
const std::list< CGMESProfile > & getPossibleAttributeProfiles (const std::string &attrName) const override
const std::list< CGMESProfile > & getPossibleProfilesIncludingAttributes () const override
void addPrimitiveGetFnsToMap (std::map< std::string, get_function > &get_map) const override
void addClassGetFnsToMap (std::map< std::string, class_get_function > &get_map) const override
void addEnumGetFnsToMap (std::map< std::string, get_function > &get_map) const override
bool isAssignableFrom (BaseClass *otherObject) const override
Public Member Functions inherited from BaseClass
void setRdfid (const std::string &id)
std::string getRdfid () const

Static Public Member Functions

static void addConstructToMap (std::unordered_map< std::string, BaseClass *(*)()> &factory_map)
static void addPrimitiveAssignFnsToMap (std::unordered_map< std::string, assign_function > &assign_map)
static void addClassAssignFnsToMap (std::unordered_map< std::string, class_assign_function > &assign_map)
static const BaseClassDefiner declare ()
Static Public Member Functions inherited from CIMPP::PowerSystemResource
static void addConstructToMap (std::unordered_map< std::string, BaseClass *(*)()> &factory_map)
static void addPrimitiveAssignFnsToMap (std::unordered_map< std::string, assign_function > &assign_map)
static void addClassAssignFnsToMap (std::unordered_map< std::string, class_assign_function > &assign_map)
static const BaseClassDefiner declare ()
Static Public Member Functions inherited from CIMPP::IdentifiedObject
static void addConstructToMap (std::unordered_map< std::string, BaseClass *(*)()> &factory_map)
static void addPrimitiveAssignFnsToMap (std::unordered_map< std::string, assign_function > &assign_map)
static void addClassAssignFnsToMap (std::unordered_map< std::string, class_assign_function > &assign_map)
static const BaseClassDefiner declare ()
Static Public Member Functions inherited from BaseClass
static void addConstructToMap (std::unordered_map< std::string, BaseClass *(*)()> &factory_map)
static void addPrimitiveAssignFnsToMap (std::unordered_map< std::string, assign_function > &assign_map)
static void addClassAssignFnsToMap (std::unordered_map< std::string, class_assign_function > &assign_map)
static const CIMPP::BaseClassDefiner declare ()

Public Attributes

std::list< CIMPP::RegulatingCondEq * > RegulatingCondEq
 The equipment that participates in this regulating control scheme. Default: {}.
std::list< CIMPP::RegulationSchedule * > RegulationSchedule
 Schedule for this regulating control. Default: {}.
CIMPP::Terminal * Terminal
 The terminal associated with this regulating control. The terminal is associated instead of a node, since the terminal could connect into either a topological node or a connectivity node. Sometimes it is useful to model regulation at a terminal of a bus bar object. Default: nullptr.
CIMPP::Boolean discrete
 The regulation is performed in a discrete mode. This applies to equipment with discrete controls, e.g. tap changers and shunt compensators. Default: false.
CIMPP::Boolean enabled
 The flag tells if regulation is enabled. Default: false.
CIMPP::Float maxAllowedTargetValue
 Maximum allowed target value (RegulatingControl.targetValue). Default: 0.0.
CIMPP::Float minAllowedTargetValue
 Minimum allowed target value (RegulatingControl.targetValue). Default: 0.0.
CIMPP::RegulatingControlModeKind mode
 The regulating control mode presently available. This specification allows for determining the kind of regulation without need for obtaining the units from a schedule. Default: 0.
CIMPP::Float targetDeadband
 This is a deadband used with discrete control to avoid excessive update of controls like tap changers and shunt compensator banks while regulating. The units of those appropriate for the mode. The attribute shall be a positive value or zero. If RegulatingControl.discrete is set to false, the RegulatingControl.targetDeadband is to be ignored. Note that for instance, if the targetValue is 100 kV and the targetDeadband is 2 kV the range is from 99 to 101 kV. Default: 0.0.
CIMPP::Float targetValue
 The target value specified for case input. This value can be used for the target value without the use of schedules. The value has the units appropriate to the mode attribute. Default: 0.0.
CIMPP::UnitMultiplier targetValueUnitMultiplier
 Specify the multiplier for used for the targetValue. Default: 0.
Public Attributes inherited from CIMPP::PowerSystemResource
std::list< CIMPP::Control * > Controls
 The controller outputs used to actually govern a regulating device, e.g. the magnetization of a synchronous machine or capacitor bank breaker actuator. Default: {}.
CIMPP::Location * Location
 Location of this power system resource. Default: nullptr.
std::list< CIMPP::Measurement * > Measurements
 The measurements associated with this power system resource. Default: {}.
Public Attributes inherited from CIMPP::IdentifiedObject
std::list< CIMPP::DiagramObject * > DiagramObjects
 The diagram objects that are associated with the domain object. Default: {}.
CIMPP::String description
 The description is a free human readable text describing or naming the object. It may be non unique and may not correlate to a naming hierarchy. Default: "".
CIMPP::String energyIdentCodeEic
 The attribute is used for an exchange of the EIC code (Energy identification Code). The length of the string is 16 characters as defined by the EIC code. For details on EIC scheme please refer to ENTSO-E web site. Default: "".
CIMPP::String mRID
 Master resource identifier issued by a model authority. The mRID is unique within an exchange context. Global uniqueness is easily achieved by using a UUID, as specified in RFC 4122, for the mRID. The use of UUID is strongly recommended. For CIMXML data files in RDF syntax conforming to IEC 61970-552, the mRID is mapped to rdf:ID or rdf:about attributes that identify CIM object elements. Default: "".
CIMPP::String name
 The name is any free human readable and possibly non unique text naming the object. Default: "".
CIMPP::String shortName
 The attribute is used for an exchange of a human readable short name with length of the string 12 characters maximum. Default: "".

Static Public Attributes

static const char debugName [] = "RegulatingControl"
Static Public Attributes inherited from CIMPP::PowerSystemResource
static const char debugName [] = "PowerSystemResource"
Static Public Attributes inherited from CIMPP::IdentifiedObject
static const char debugName [] = "IdentifiedObject"
Static Public Attributes inherited from BaseClass
static const char debugName [] = "BaseClass"

Protected Member Functions

std::map< std::string, AttrDetails > allAttrDetailsMap () const override

Detailed Description

Specifies a set of equipment that works together to control a power system quantity such as voltage or flow. Remote bus voltage control is possible by specifying the controlled terminal located at some place remote from the controlling equipment. The specified terminal shall be associated with the connectivity node of the controlled point. The most specific subtype of RegulatingControl shall be used in case such equipment participate in the control, e.g. TapChangerControl for tap changers. For flow control, load sign convention is used, i.e. positive sign means flow out from a TopologicalNode (bus) into the conducting equipment. The attribute minAllowedTargetValue and maxAllowedTargetValue are required in the following cases: - For a power generating module operated in power factor control mode to specify maximum and minimum power factor values; - Whenever it is necessary to have an off center target voltage for the tap changer regulator. For instance, due to long cables to off shore wind farms and the need to have a simpler setup at the off shore transformer platform, the voltage is controlled from the land at the connection point for the off shore wind farm. Since there usually is a voltage rise along the cable, there is typical and overvoltage of up 3-4 kV compared to the on shore station. Thus in normal operation the tap changer on the on shore station is operated with a target set point, which is in the lower parts of the dead band. The attributes minAllowedTargetValue and maxAllowedTargetValue are not related to the attribute targetDeadband and thus they are not treated as an alternative of the targetDeadband. They are needed due to limitations in the local substation controller. The attribute targetDeadband is used to prevent the power flow from move the tap position in circles (hunting) that is to be used regardless of the attributes minAllowedTargetValue and maxAllowedTargetValue.

Member Function Documentation

◆ addClassGetFnsToMap()

void RegulatingControl::addClassGetFnsToMap ( std::map< std::string, class_get_function > & get_map) const
overridevirtual

Reimplemented from CIMPP::PowerSystemResource.

◆ addEnumGetFnsToMap()

void RegulatingControl::addEnumGetFnsToMap ( std::map< std::string, get_function > & get_map) const
overridevirtual

Reimplemented from CIMPP::PowerSystemResource.

◆ addPrimitiveGetFnsToMap()

void RegulatingControl::addPrimitiveGetFnsToMap ( std::map< std::string, get_function > & get_map) const
overridevirtual

Reimplemented from CIMPP::PowerSystemResource.

◆ allAttrDetailsMap()

std::map< std::string, AttrDetails > RegulatingControl::allAttrDetailsMap ( ) const
overrideprotectedvirtual

Reimplemented from CIMPP::PowerSystemResource.

◆ debugString()

const char * RegulatingControl::debugString ( ) const
overridevirtual

Reimplemented from CIMPP::PowerSystemResource.

◆ getAttributeNames()

const std::list< std::string > & RegulatingControl::getAttributeNames ( ) const
overridevirtual

Reimplemented from CIMPP::PowerSystemResource.

◆ getAttributeNamespaceUrl()

const std::string & RegulatingControl::getAttributeNamespaceUrl ( const std::string & attrName) const
overridevirtual

Reimplemented from CIMPP::PowerSystemResource.

◆ getClassNamespaceUrl()

const std::string & RegulatingControl::getClassNamespaceUrl ( ) const
overridevirtual

Reimplemented from CIMPP::PowerSystemResource.

◆ getPossibleAttributeProfiles()

const std::list< CGMESProfile > & RegulatingControl::getPossibleAttributeProfiles ( const std::string & attrName) const
overridevirtual

Reimplemented from CIMPP::PowerSystemResource.

◆ getPossibleProfiles()

const std::list< CGMESProfile > & RegulatingControl::getPossibleProfiles ( ) const
overridevirtual

Reimplemented from CIMPP::PowerSystemResource.

◆ getPossibleProfilesIncludingAttributes()

const std::list< CGMESProfile > & RegulatingControl::getPossibleProfilesIncludingAttributes ( ) const
overridevirtual

Reimplemented from CIMPP::PowerSystemResource.

◆ getRecommendedProfile()

const CGMESProfile & RegulatingControl::getRecommendedProfile ( ) const
overridevirtual

Reimplemented from CIMPP::PowerSystemResource.

◆ isAssignableFrom()

bool RegulatingControl::isAssignableFrom ( BaseClass * otherObject) const
overridevirtual

Reimplemented from CIMPP::PowerSystemResource.


The documentation for this class was generated from the following files: