Skip to content

Add target and threshold setpoints#10

Open
connorjcantrell wants to merge 7 commits into
masterfrom
setpoint-restructure
Open

Add target and threshold setpoints#10
connorjcantrell wants to merge 7 commits into
masterfrom
setpoint-restructure

Conversation

@connorjcantrell

@connorjcantrell connorjcantrell commented Aug 14, 2024

Copy link
Copy Markdown
Collaborator

TBD

Classes that are debatably not a Setpoint and possibly need to be moved to Parameter:

  • Demand Setpoint
  • Voltage Ratio Setpoint
  • Current Ratio Setpoint

Deprecations

Classes to be deprecated:

  • Max_Air_Temperature_Setpoint
  • Max_Water_Temperature_Setpoint
  • Min_Air_Temperature_Setpoint
  • Min_Water_Temperature_Setpoint
  • Load_Setpoint
  • Outside_Air_Temperature_Setpoint
  • All classes with "Target" contained in name (e.g. "Effective Target Zone Air Temperature Setpoint")
  • All Setpoints moved to Threshold (deprecate class names containing Setpoint)

Additions

Classes being added to Setpoint:

  • Position_Setpoint
  • Valve_Position_Setpoint
  • Dehumidification_Threshold
  • Humidification_Threshold
  • Lockout_Threshold
  • All classes moved from Setpoint to Threshold

Other topics:

  • Discuss the naming convention for threshold setpoints as I mentioned. We want to encourage "an action" for threshold - setpoints. E.g., "CO2_Setpoint" by the name implies it's a target setpoint like temperature setpoint. We could make an exception but need to discuss the overall direction

Comment thread bricksrc/parameter.py Outdated
Comment thread bricksrc/setpoint.py
@@ -1,347 +1,261 @@
from .namespaces import TAG, BRICK, RDFS, QUDTQK

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

dont change the import path

Copy link
Copy Markdown
Collaborator Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@jbkoh After moving setpoints into parameter, I found that QUDTQK wasn't imported. If this remains unchanged, we will need to remove the BRICK.hasQauntity properties

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

don't understand what this means and the relevance between this line and hasQuantity

@connorjcantrell connorjcantrell Sep 4, 2024

Copy link
Copy Markdown
Collaborator Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

For example, this was recently added to Parameter. I updated the namespace import to include QUDTQK:

                    "Humidity_Deadband": {
                        BRICK.hasQuantity: QUDTQK.RelativeHumidity,

https://github.com/mapped/Brick/pull/10/files#diff-b7c92830878492f3b532f1dfe590a9dc6039d81ac47aa2a75160a8a872de69beR102

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

You can add more imports. My ask was not to modify the import path from from .namespaces to from namespaces

Comment thread bricksrc/threshold.py
"subclasses": {
"Enable_Hot_Water_System_Outside_Air_Temperature_Threshold": {
"tags": [
TAG.Point,

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

All thresholds should have Parameter as a tag if Threshold is a subclass of Parameter.

Copy link
Copy Markdown
Collaborator Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I wasn't originally planning on defining Threshold as a subclass of parameter, but see the argument for it. I am proposing we add Threshold as a top level class alongside Setpoint and Parameter

Comment thread bricksrc/threshold.py Outdated
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants