Two Point Controller Configuration

pydantic model encodapy.components.two_point_controller.two_point_controller_config.TwoPointControllerConfigData[source]

Bases: ConfigData

Model for the configuration data of the thermal storage service.

Show JSON schema
{
   "title": "TwoPointControllerConfigData",
   "description": "Model for the configuration data of the thermal storage service.",
   "type": "object",
   "properties": {
      "hysteresis": {
         "allOf": [
            {
               "$ref": "#/$defs/DataPointNumber"
            }
         ],
         "description": "Hysteresis value for the two-point controller"
      },
      "setpoint": {
         "allOf": [
            {
               "$ref": "#/$defs/DataPointNumber"
            }
         ],
         "description": "Setpoint value for the two-point controller"
      },
      "command_enabled": {
         "allOf": [
            {
               "$ref": "#/$defs/DataPointGeneral"
            }
         ],
         "default": {
            "value": 1,
            "unit": null,
            "time": null
         },
         "description": "Value representing the enabled state of the control signal"
      },
      "command_disabled": {
         "allOf": [
            {
               "$ref": "#/$defs/DataPointGeneral"
            }
         ],
         "default": {
            "value": 0,
            "unit": null,
            "time": null
         },
         "description": "Value representing the disabled state of the control signal"
      }
   },
   "$defs": {
      "DataPointGeneral": {
         "description": "Model for datapoints of the controller component.\n\nAttributes:\n    value (Any): The value of the datapoint, which can be of various types             (string, float, int, boolean, dictionary, list, DataFrame, or None).\n    unit (Optional[DataUnits]): Optional unit of the datapoint, if applicable.\n    time (Optional[datetime]): Optional timestamp of the datapoint, if applicable.",
         "properties": {
            "value": {
               "title": "Value"
            },
            "unit": {
               "anyOf": [
                  {
                     "$ref": "#/$defs/DataUnits"
                  },
                  {
                     "type": "null"
                  }
               ],
               "default": null
            },
            "time": {
               "anyOf": [
                  {
                     "format": "date-time",
                     "type": "string"
                  },
                  {
                     "type": "null"
                  }
               ],
               "default": null,
               "title": "Time"
            }
         },
         "required": [
            "value"
         ],
         "title": "DataPointGeneral",
         "type": "object"
      },
      "DataPointNumber": {
         "description": "Model for datapoints of the controller component.\n\nAttributes:\n    value (float | int): The value of the datapoint, which is a number (float, int).\n    unit (Optional[DataUnits]): Optional unit of the datapoint, if applicable.\n    time (Optional[datetime]): Optional timestamp of the datapoint, if applicable.",
         "properties": {
            "value": {
               "anyOf": [
                  {
                     "type": "number"
                  },
                  {
                     "type": "integer"
                  }
               ],
               "title": "Value"
            },
            "unit": {
               "anyOf": [
                  {
                     "$ref": "#/$defs/DataUnits"
                  },
                  {
                     "type": "null"
                  }
               ],
               "default": null
            },
            "time": {
               "anyOf": [
                  {
                     "format": "date-time",
                     "type": "string"
                  },
                  {
                     "type": "null"
                  }
               ],
               "default": null,
               "title": "Time"
            }
         },
         "required": [
            "value"
         ],
         "title": "DataPointNumber",
         "type": "object"
      },
      "DataUnits": {
         "description": "Possible units for the data\nUnits which are defined by Unit Code (https://unece.org/trade/cefact/UNLOCODE-Download\nor https://github.com/RWTH-EBC/FiLiP/blob/master/filip/data/unece-units/units_of_measure.csv)\nor here: https://unece.org/fileadmin/DAM/cefact/recommendations/rec20/rec20_rev3_Annex3e.pdf\nTODO:\n    - Is there a better way to handle the units?\n    - Add more units?",
         "enum": [
            "SEC",
            "HUR",
            "MIN",
            "CEL",
            "KEL",
            "LTR",
            "MTQ",
            "MQH",
            "MQS",
            "E32",
            "L2",
            "WTT",
            "WHR",
            "KWH",
            "CMT",
            "MTR",
            "MTK",
            "MTS",
            "P1",
            "OHM",
            "VLT"
         ],
         "title": "DataUnits",
         "type": "string"
      }
   },
   "required": [
      "hysteresis",
      "setpoint"
   ]
}

field hysteresis: DataPointNumber [Required]

Hysteresis value for the two-point controller

field setpoint: DataPointNumber [Required]

Setpoint value for the two-point controller

field command_enabled: DataPointGeneral = DataPointGeneral(value=1, unit=None, time=None)

Value representing the enabled state of the control signal

field command_disabled: DataPointGeneral = DataPointGeneral(value=0, unit=None, time=None)

Value representing the disabled state of the control signal

pydantic model encodapy.components.two_point_controller.two_point_controller_config.TwoPointControllerInputData[source]

Bases: InputData

Model for the input of the two-point controller component.

Variables:
  • current_value (DataPointNumber) – The current value of the input.

  • latest_control_signal (DataPointNumber) – The latest control signal output from the two-point controller.

Show JSON schema
{
   "title": "TwoPointControllerInputData",
   "description": "Model for the input of the two-point controller component.\n\nAttributes:\n    current_value (DataPointNumber): The current value of the input.\n    latest_control_signal (DataPointNumber): The latest control signal output             from the two-point controller.",
   "type": "object",
   "properties": {
      "current_value": {
         "allOf": [
            {
               "$ref": "#/$defs/DataPointNumber"
            }
         ],
         "description": "Current value of the input, typically a sensor reading"
      },
      "latest_control_signal": {
         "allOf": [
            {
               "$ref": "#/$defs/DataPointNumber"
            }
         ],
         "description": "Latest control signal output from the two-point controller"
      }
   },
   "$defs": {
      "DataPointNumber": {
         "description": "Model for datapoints of the controller component.\n\nAttributes:\n    value (float | int): The value of the datapoint, which is a number (float, int).\n    unit (Optional[DataUnits]): Optional unit of the datapoint, if applicable.\n    time (Optional[datetime]): Optional timestamp of the datapoint, if applicable.",
         "properties": {
            "value": {
               "anyOf": [
                  {
                     "type": "number"
                  },
                  {
                     "type": "integer"
                  }
               ],
               "title": "Value"
            },
            "unit": {
               "anyOf": [
                  {
                     "$ref": "#/$defs/DataUnits"
                  },
                  {
                     "type": "null"
                  }
               ],
               "default": null
            },
            "time": {
               "anyOf": [
                  {
                     "format": "date-time",
                     "type": "string"
                  },
                  {
                     "type": "null"
                  }
               ],
               "default": null,
               "title": "Time"
            }
         },
         "required": [
            "value"
         ],
         "title": "DataPointNumber",
         "type": "object"
      },
      "DataUnits": {
         "description": "Possible units for the data\nUnits which are defined by Unit Code (https://unece.org/trade/cefact/UNLOCODE-Download\nor https://github.com/RWTH-EBC/FiLiP/blob/master/filip/data/unece-units/units_of_measure.csv)\nor here: https://unece.org/fileadmin/DAM/cefact/recommendations/rec20/rec20_rev3_Annex3e.pdf\nTODO:\n    - Is there a better way to handle the units?\n    - Add more units?",
         "enum": [
            "SEC",
            "HUR",
            "MIN",
            "CEL",
            "KEL",
            "LTR",
            "MTQ",
            "MQH",
            "MQS",
            "E32",
            "L2",
            "WTT",
            "WHR",
            "KWH",
            "CMT",
            "MTR",
            "MTK",
            "MTS",
            "P1",
            "OHM",
            "VLT"
         ],
         "title": "DataUnits",
         "type": "string"
      }
   },
   "required": [
      "current_value",
      "latest_control_signal"
   ]
}

field current_value: DataPointNumber [Required]

Current value of the input, typically a sensor reading

field latest_control_signal: DataPointNumber [Required]

Latest control signal output from the two-point controller

pydantic model encodapy.components.two_point_controller.two_point_controller_config.TwoPointControllerOutputData[source]

Bases: OutputData

Model for the output of the two-point controller component.

Variables:

control_signal (DataPointNumber) – The control signal output from the two-point controller.

Show JSON schema
{
   "title": "TwoPointControllerOutputData",
   "description": "Model for the output of the two-point controller component.\n\nAttributes:\n    control_signal (DataPointNumber): The control signal output from the two-point controller.",
   "type": "object",
   "properties": {
      "control_signal": {
         "allOf": [
            {
               "$ref": "#/$defs/DataPointGeneral"
            }
         ],
         "description": "Control signal output from the two-point controller"
      }
   },
   "$defs": {
      "DataPointGeneral": {
         "description": "Model for datapoints of the controller component.\n\nAttributes:\n    value (Any): The value of the datapoint, which can be of various types             (string, float, int, boolean, dictionary, list, DataFrame, or None).\n    unit (Optional[DataUnits]): Optional unit of the datapoint, if applicable.\n    time (Optional[datetime]): Optional timestamp of the datapoint, if applicable.",
         "properties": {
            "value": {
               "title": "Value"
            },
            "unit": {
               "anyOf": [
                  {
                     "$ref": "#/$defs/DataUnits"
                  },
                  {
                     "type": "null"
                  }
               ],
               "default": null
            },
            "time": {
               "anyOf": [
                  {
                     "format": "date-time",
                     "type": "string"
                  },
                  {
                     "type": "null"
                  }
               ],
               "default": null,
               "title": "Time"
            }
         },
         "required": [
            "value"
         ],
         "title": "DataPointGeneral",
         "type": "object"
      },
      "DataUnits": {
         "description": "Possible units for the data\nUnits which are defined by Unit Code (https://unece.org/trade/cefact/UNLOCODE-Download\nor https://github.com/RWTH-EBC/FiLiP/blob/master/filip/data/unece-units/units_of_measure.csv)\nor here: https://unece.org/fileadmin/DAM/cefact/recommendations/rec20/rec20_rev3_Annex3e.pdf\nTODO:\n    - Is there a better way to handle the units?\n    - Add more units?",
         "enum": [
            "SEC",
            "HUR",
            "MIN",
            "CEL",
            "KEL",
            "LTR",
            "MTQ",
            "MQH",
            "MQS",
            "E32",
            "L2",
            "WTT",
            "WHR",
            "KWH",
            "CMT",
            "MTR",
            "MTK",
            "MTS",
            "P1",
            "OHM",
            "VLT"
         ],
         "title": "DataUnits",
         "type": "string"
      }
   },
   "required": [
      "control_signal"
   ]
}

field control_signal: DataPointGeneral [Required]

Control signal output from the two-point controller