VICUS Library
Documentation of Vicus library
|
#include <VICUS_NetworkController.h>
Public Types | |
enum | ModelType { MT_Constant , MT_Scheduled , NUM_MT } |
enum | ControlledProperty { CP_TemperatureDifference , CP_TemperatureDifferenceOfFollowingElement , CP_ThermostatValue , CP_MassFlux , CP_PumpOperation , CP_PressureDifferenceWorstpoint , NUM_CP } |
enum | ControllerType { CT_PController , CT_PIController , CT_PIDController , CT_OnOffController , NUM_CT } |
enum | para_t { P_Kp , P_Ki , P_Kd , P_TemperatureDifferenceSetpoint , P_MassFluxSetpoint , P_HeatLossOfFollowingElementThreshold , P_RelControllerErrorForIntegratorReset , P_PressureDifferenceSetpoint , NUM_P } |
enum | References { ID_ThermostatZone , ID_Schedule , NUM_ID } |
Public Types inherited from VICUS::AbstractDBElement | |
enum | ComparisonResult { Equal , OnlyMetaDataDiffers , Different } |
Public Member Functions | |
NetworkController () | |
VICUS_READWRITE_OVERRIDE VICUS_COMPARE_WITH_ID bool | isValid (const Database< Schedule > &scheduleDB) const |
ComparisonResult | equal (const AbstractDBElement *other) const override |
void | checkParameters () const |
Public Member Functions inherited from VICUS::AbstractDBElement | |
AbstractDBElement ()=default | |
AbstractDBElement (unsigned int id, const IBK::MultiLanguageString &name) | |
virtual | ~AbstractDBElement () |
virtual void | readXML (const TiXmlElement *element)=0 |
virtual TiXmlElement * | writeXML (TiXmlElement *parent) const =0 |
void | collectChildren (std::set< const AbstractDBElement * > &allChildrenRefs) const |
void | collectLocalChildren (std::set< AbstractDBElement * > &localChildrenRefs) const |
const QString | sourceName () const |
Static Public Member Functions | |
static para_t | setPointType (ControlledProperty controlledProperty) |
Public Attributes | |
ModelType | m_modelType = NUM_MT |
ControllerType | m_controllerType = NUM_CT |
ControlledProperty | m_controlledProperty = NUM_CP |
IDType | m_idReferences [NUM_ID] |
double | m_maximumControllerResultValue = 0 |
IBK::Parameter | m_para [NUM_P] |
Public Attributes inherited from VICUS::AbstractDBElement | |
unsigned int | m_id = INVALID_ID |
IBK::MultiLanguageString | m_displayName |
QColor | m_color |
bool | m_builtIn = false |
bool | m_local = true |
std::set< AbstractDBElement * > | m_childrenRefs |
bool | m_isReferenced = false |
std::string | m_errorMsg |
This class is a copy of NANDRAD::HydraulicNetworkControlElement with some added members, methods to make it usable as a class for the VICUS Database.
NOTE: Other options like deriving it from the base class doesnt really bring a benefit since we need all the declarations for the code generator anyway. Also making a child element of type NANDRAD::HydraulicNetworkControlElement does not work, since we want to have uniform member names like 'm_id' and 'm_displayName' for the DB read/write process with template functions This this should be the best solution ...
Controlled property used as signal input for the controller.
Defines variability options for set point values.
Enumerator | |
---|---|
MT_Constant | |
MT_Scheduled | Generates 'TemperatureDifferenceSetpointSchedule' or 'MassFluxSetpointSchedule' depending on controlled property for each network element that uses this controller. InputRef-Typ: NetworkElement, id = id of network element that uses the component with this controller |
NUM_MT |
VICUS::NetworkController::NetworkController | ( | ) |
void VICUS::NetworkController::checkParameters | ( | ) | const |
A copy of NANDRAD::HydraulicNetworkControlElement::checkParameters
|
overridevirtual |
Comparison operator
Implements VICUS::AbstractDBElement.
Checks if all parameters are valid.
|
static |
Returns the parameter / type of set point for the given type of controlled property
ControlledProperty VICUS::NetworkController::m_controlledProperty = NUM_CP |
property which shall be controlled (temperature difference, ...)
ControllerType VICUS::NetworkController::m_controllerType = NUM_CT |
Controller type (P, PI, ...)
double VICUS::NetworkController::m_maximumControllerResultValue = 0 |
Used to cut the system input, if this is zero, it will not be considered
Determines variability of setpoint parameters.
IBK::Parameter VICUS::NetworkController::m_para[NUM_P] |
Controller parameters.