parameter-monitor.toml: Parameter Monitor Settings#

parameter-monitor.toml#

Parameter Monitor configuration.

This configuration defines the juice parameters to monitor for throttling and their thresholds.

juice_topic_monitoring_units#

Type: dict[string, object].

Dictionary of Juice Topic Monitor units.

The key is the unique identifier for the unit, and the value is the configuration for that unit.

juice_topic_monitoring_units.{key}#

Type: object.

Base monitoring configuration for individual units.

Defines a topic and field to monitor, and thresholds for warning and throttling.

juice_topic_monitoring_units.{key}.display_label#

Type: string.

Human-readable description to display in the UI.

juice_topic_monitoring_units.{key}.unit#

Type: string. Default: '1'.

Unit that the value is measured in. Must be compatible with pint.Unit().

Defaults to dimensionless unit.

juice_topic_monitoring_units.{key}.monitored_topic#

Type: string.

Juice topic to subscribe for monitoring the unit.

juice_topic_monitoring_units.{key}.monitored_event_type#

Type: string.

Type of the event to monitor.

This should be the full module path of the event class, e.g. orangeqs.juice.system_monitor.data_structures.TemperaturePoint.

The field specified in monitored_field should be present in the data of this event.

juice_topic_monitoring_units.{key}.monitored_field#

Type: string.

Field in the topic data to monitor.

juice_topic_monitoring_units.{key}.warn_if_larger#

Type: number | null.

Warn users if the unit is above a certain value.

juice_topic_monitoring_units.{key}.throttle_if_larger#

Type: number | null.

Pause executing experiments if the unit is above a certain value.

juice_topic_monitoring_units.{key}.throttle_grace_interval#

Type: number. Default: 0.0.

Interval between detection of throttled state and actually throttling.

This value can be used if the value can fluctuate. If it is set to non-zero time, system will monitor value for that time to ensure that system should be throttled.

juice_topic_monitoring_units.{key}.stop_throttle_if_smaller#

Type: number | null.

Resume executing experiments if the unit is below a certain value.

In general, this value should be less than throttle_if_larger. For example, if we are running equipment that is constantly heating up under the load and throttle at 90°C, it may be wise to wait until it cools down to 80°C before resuming experiments.

If throttle_if_larger is specified, stop_throttle_if_smaller will be set to the same value by default. If stop_throttle_if_smaller is larger than throttle_if_larger, settings won’t pass validation.

juice_topic_monitoring_units.{key}.stop_throttle_grace_interval#

Type: number. Default: 0.0.

Interval between detection of safe state and actually resuming.

This value can be used if the value can fluctuate. If it is set to non-zero time, system will monitor value for that time to ensure that system should be resumed.