diff --git a/src/xeto/ph.points/boiler.xeto b/src/xeto/ph.points/boiler.xeto new file mode 100644 index 0000000..a448b02 --- /dev/null +++ b/src/xeto/ph.points/boiler.xeto @@ -0,0 +1,26 @@ +// +// Copyright (c) 2026, Project-Haystack +// Licensed under the Academic Free License version 3.0 +// +// History: +// 12 Feb 2026 Creation - Add most common boiler point specs - Adam Garnhart +// + +// On/off command to run boiler equipment +BoilerHeatRunCmd : HeatRunCmd { boiler } + +// Sensor for on/off state of boiler +BoilerHeatRunSensor : HeatRunSensor { boiler } + +// Command to permit/prohibit a boiler to run. +// Enable is used as an interlock with a Run Command. +BoilerEnableCmd : EnableCmd { boiler } + +// Boiler heating modulating command, where 0% is no heating, 100% is full heating +BoilerHeatModulatingCmd : HeatModulatingCmd { boiler } + +// Sensor to detect the level of water for a boiler, 0% empty to 100% full +BoilerWaterLevelSensor : WaterLevelSensor { boiler } + +// Sensor for the cumulative runtime duration of a boiler +BoilerRuntimeSensor : RuntimeSensor { boiler } diff --git a/src/xeto/ph.points/misc.xeto b/src/xeto/ph.points/misc.xeto index 165b057..9a4e0c0 100644 --- a/src/xeto/ph.points/misc.xeto +++ b/src/xeto/ph.points/misc.xeto @@ -4,6 +4,7 @@ // // History: // 5 Apr 2023 Brian Frank Creation +// 12 Feb 2026 Added HeatModulatingCmd/CoolModulatingCmd/LevelSensor/RuntimeSensor - Adam Garnhart // // Dessicant dehumidifier enable command @@ -45,6 +46,18 @@ CoolEnableCmd : EnableCmd { cool } // Used as an interlock with a run command. HeatEnableCmd : EnableCmd { heat } +// On/off command to run cooling equipment +CoolRunCmd : RunCmd { cool } + +// On/off command to run heating equipment +HeatRunCmd : RunCmd { heat } + +// Sensor for on/off state of cooling equipment +CoolRunSensor : RunSensor { cool } + +// Sensor for on/off state of heating equipment +HeatRunSensor : RunSensor { heat } + // Boolean alarm condition AlarmSensor : BoolPoint & SensorPoint { alarm } @@ -54,3 +67,24 @@ ModulatingPoint : NumberPoint { modulating unit: Unit "%" } + +// Modulating command for amount of heating, where 0% is no heating, 100% is full heating +HeatModulatingCmd : ModulatingPoint & CmdPoint { heat } + +// Modulating command for amount of cooling, where 0% is no cooling, 100% is full cooling +CoolModulatingCmd : ModulatingPoint & CmdPoint { cool } + +// Sensor for the cumulative runtime duration of equipment +RuntimeSensor : NumberPoint & SensorPoint { + runtime + unit: Unit "hr" +} + +// Sensor to detect the level of a liquid, 0% empty to 100% full +LevelSensor : NumberPoint & SensorPoint { + level + unit: Unit "%" +} + +// Sensor to detect the level of water, 0% empty to 100% full +WaterLevelSensor : LevelSensor { water } diff --git a/src/xeto/ph/entity.xeto b/src/xeto/ph/entity.xeto index 93e57f2..26e7d98 100644 --- a/src/xeto/ph/entity.xeto +++ b/src/xeto/ph/entity.xeto @@ -1268,6 +1268,9 @@ PhEntity: Entity { // on in order to run the equipment. *run: Marker + // Relating to a time duration which tracks the cumulative time an equipment runs + *runtime: Marker + // Scalar is an atomic value kind *scalar: Obj