diff --git a/Buildings/Air/Systems/SingleZone/VAV/BaseClasses/ControllerChillerDXHeatingEconomizer.mo b/Buildings/Air/Systems/SingleZone/VAV/BaseClasses/ControllerChillerDXHeatingEconomizer.mo
index bd5e08c89f6..72b8ad01a28 100644
--- a/Buildings/Air/Systems/SingleZone/VAV/BaseClasses/ControllerChillerDXHeatingEconomizer.mo
+++ b/Buildings/Air/Systems/SingleZone/VAV/BaseClasses/ControllerChillerDXHeatingEconomizer.mo
@@ -200,7 +200,7 @@ model ControllerChillerDXHeatingEconomizer
final reverseActing=false)
"Cooling coil valve controller"
annotation (Placement(transformation(extent={{0,-30},{20,-10}})));
- Buildings.Controls.OBC.CDL.Logical.Switch swi
+ Buildings.Controls.OBC.CDL.Continuous.Switch swi
"Switch the outdoor air fraction to 0 when in unoccupied mode"
annotation (Placement(transformation(extent={{0,20},{20,40}})));
Buildings.Controls.OBC.CDL.Interfaces.BooleanInput uOcc
@@ -210,7 +210,7 @@ model ControllerChillerDXHeatingEconomizer
Buildings.Controls.OBC.CDL.Continuous.Sources.Constant con(k=0)
"Zero outside air fraction"
annotation (Placement(transformation(extent={{-60,-30},{-40,-10}})));
- Buildings.Controls.OBC.CDL.Logical.Switch swiFan "Switch fan on"
+ Buildings.Controls.OBC.CDL.Continuous.Switch swiFan "Switch fan on"
annotation (Placement(transformation(extent={{70,120},{90,140}})));
Buildings.Controls.OBC.CDL.Continuous.Hysteresis hysHea(
final uLow=0.01,
diff --git a/Buildings/Applications/DataCenters/DXCooled/Controls/AirsideEconomizer.mo b/Buildings/Applications/DataCenters/DXCooled/Controls/AirsideEconomizer.mo
index c3f58220bf3..19612823b33 100644
--- a/Buildings/Applications/DataCenters/DXCooled/Controls/AirsideEconomizer.mo
+++ b/Buildings/Applications/DataCenters/DXCooled/Controls/AirsideEconomizer.mo
@@ -49,7 +49,7 @@ protected
Buildings.Controls.OBC.CDL.Integers.Equal ecoOff
"Determine if airside economizer is off"
annotation (Placement(transformation(extent={{-40,-70},{-20,-50}})));
- Buildings.Controls.OBC.CDL.Logical.Switch switch1
+ Buildings.Controls.OBC.CDL.Continuous.Switch switch1
"Switch to select control output"
annotation (Placement(transformation(extent={{40,-10},{60,10}})));
diff --git a/Buildings/Applications/DataCenters/DXCooled/Controls/Compressor.mo b/Buildings/Applications/DataCenters/DXCooled/Controls/Compressor.mo
index 5186c6452b1..8b95246c391 100644
--- a/Buildings/Applications/DataCenters/DXCooled/Controls/Compressor.mo
+++ b/Buildings/Applications/DataCenters/DXCooled/Controls/Compressor.mo
@@ -49,7 +49,7 @@ protected
Buildings.Controls.OBC.CDL.Integers.Equal freCoo
"Determine if free cooling is on"
annotation (Placement(transformation(extent={{-40,-60},{-20,-40}})));
- Buildings.Controls.OBC.CDL.Logical.Switch switch1
+ Buildings.Controls.OBC.CDL.Continuous.Switch switch1
"Switch to select control output"
annotation (Placement(transformation(extent={{60,-10},{80,10}})));
Buildings.Controls.OBC.CDL.Continuous.Sources.Constant const(final k=0)
diff --git a/Buildings/Controls/OBC/ASHRAE/G36_PR1/AHUs/MultiZone/VAV/Economizers/Subsequences/Enable.mo b/Buildings/Controls/OBC/ASHRAE/G36_PR1/AHUs/MultiZone/VAV/Economizers/Subsequences/Enable.mo
index c68b17b87f2..b3c23ee9f2e 100644
--- a/Buildings/Controls/OBC/ASHRAE/G36_PR1/AHUs/MultiZone/VAV/Economizers/Subsequences/Enable.mo
+++ b/Buildings/Controls/OBC/ASHRAE/G36_PR1/AHUs/MultiZone/VAV/Economizers/Subsequences/Enable.mo
@@ -159,15 +159,15 @@ protected
final uHigh=hOutHigLimCutHig) if use_enthalpy
"Outdoor air enthalpy hysteresis for both fixed and differential enthalpy cutoff conditions"
annotation (Placement(transformation(extent={{-100,160},{-80,180}})));
- Buildings.Controls.OBC.CDL.Logical.Switch outDamSwitch
+ Buildings.Controls.OBC.CDL.Continuous.Switch outDamSwitch
"Set maximum OA damper position to minimum at disable (after a given time delay)"
annotation (Placement(transformation(extent={{62,-60},{82,-40}})));
- Buildings.Controls.OBC.CDL.Logical.Switch retDamSwitch "Set minimum RA damper position to maximum at disable"
+ Buildings.Controls.OBC.CDL.Continuous.Switch retDamSwitch "Set minimum RA damper position to maximum at disable"
annotation (Placement(transformation(extent={{-40,-162},{-20,-142}})));
- Buildings.Controls.OBC.CDL.Logical.Switch maxRetDamSwitch
+ Buildings.Controls.OBC.CDL.Continuous.Switch maxRetDamSwitch
"Keep maximum RA damper position at physical maximum for a short time period after disable signal"
annotation (Placement(transformation(extent={{40,-120},{60,-100}})));
- Buildings.Controls.OBC.CDL.Logical.Switch minRetDamSwitch
+ Buildings.Controls.OBC.CDL.Continuous.Switch minRetDamSwitch
"Keep minimum RA damper position at physical maximum for a short time period after disable"
annotation (Placement(transformation(extent={{40,-160},{60,-140}})));
Buildings.Controls.OBC.CDL.Logical.Nor nor1 "Logical nor"
diff --git a/Buildings/Controls/OBC/ASHRAE/G36_PR1/AHUs/MultiZone/VAV/Economizers/Subsequences/Limits.mo b/Buildings/Controls/OBC/ASHRAE/G36_PR1/AHUs/MultiZone/VAV/Economizers/Subsequences/Limits.mo
index 10cc4cefdac..770de24fdb0 100644
--- a/Buildings/Controls/OBC/ASHRAE/G36_PR1/AHUs/MultiZone/VAV/Economizers/Subsequences/Limits.mo
+++ b/Buildings/Controls/OBC/ASHRAE/G36_PR1/AHUs/MultiZone/VAV/Economizers/Subsequences/Limits.mo
@@ -163,10 +163,10 @@ protected
final limitAbove=true)
"Linear mapping of the return air damper position to the control signal"
annotation (Placement(transformation(extent={{120,100},{140,120}})));
- Buildings.Controls.OBC.CDL.Logical.Switch retDamPosMinSwitch
+ Buildings.Controls.OBC.CDL.Continuous.Switch retDamPosMinSwitch
"A switch to deactivate the return air damper minimal outdoor airflow control"
annotation (Placement(transformation(extent={{40,-30},{60,-10}})));
- Buildings.Controls.OBC.CDL.Logical.Switch outDamPosMaxSwitch
+ Buildings.Controls.OBC.CDL.Continuous.Switch outDamPosMaxSwitch
"A switch to deactivate the outdoor air damper minimal outdoor airflow control"
annotation (Placement(transformation(extent={{40,10},{60,30}})));
Buildings.Controls.OBC.CDL.Logical.Not not1 "Logical not block"
diff --git a/Buildings/Controls/OBC/ASHRAE/G36_PR1/AHUs/MultiZone/VAV/SetPoints/ExhaustDamper.mo b/Buildings/Controls/OBC/ASHRAE/G36_PR1/AHUs/MultiZone/VAV/SetPoints/ExhaustDamper.mo
index e3a967b82bd..05c494eaff0 100644
--- a/Buildings/Controls/OBC/ASHRAE/G36_PR1/AHUs/MultiZone/VAV/SetPoints/ExhaustDamper.mo
+++ b/Buildings/Controls/OBC/ASHRAE/G36_PR1/AHUs/MultiZone/VAV/SetPoints/ExhaustDamper.mo
@@ -44,7 +44,7 @@ block ExhaustDamper
final r=dpBuiSet)
"Building static pressure controller"
annotation (Placement(transformation(extent={{20,50},{40,70}})));
- Buildings.Controls.OBC.CDL.Logical.Switch swi
+ Buildings.Controls.OBC.CDL.Continuous.Switch swi
"Check if exhaust damper should be activated"
annotation (Placement(transformation(extent={{40,-40},{60,-20}})));
diff --git a/Buildings/Controls/OBC/ASHRAE/G36_PR1/AHUs/MultiZone/VAV/SetPoints/OutdoorAirFlow/AHU.mo b/Buildings/Controls/OBC/ASHRAE/G36_PR1/AHUs/MultiZone/VAV/SetPoints/OutdoorAirFlow/AHU.mo
index 3d837f11a28..ac1f7227a2d 100644
--- a/Buildings/Controls/OBC/ASHRAE/G36_PR1/AHUs/MultiZone/VAV/SetPoints/OutdoorAirFlow/AHU.mo
+++ b/Buildings/Controls/OBC/ASHRAE/G36_PR1/AHUs/MultiZone/VAV/SetPoints/OutdoorAirFlow/AHU.mo
@@ -183,7 +183,7 @@ protected
Buildings.Controls.OBC.CDL.Logical.And and1 "Logical and"
annotation (Placement(transformation(extent={{120,-150},{140,-130}})));
- Buildings.Controls.OBC.CDL.Logical.Switch swi4
+ Buildings.Controls.OBC.CDL.Continuous.Switch swi4
"Ensuring the system efficiency will not be negative"
annotation (Placement(transformation(extent={{60,-70},{80,-50}})));
diff --git a/Buildings/Controls/OBC/ASHRAE/G36_PR1/AHUs/MultiZone/VAV/SetPoints/OutdoorAirFlow/Zone.mo b/Buildings/Controls/OBC/ASHRAE/G36_PR1/AHUs/MultiZone/VAV/SetPoints/OutdoorAirFlow/Zone.mo
index e94f0701ee9..2ac232d9bbf 100644
--- a/Buildings/Controls/OBC/ASHRAE/G36_PR1/AHUs/MultiZone/VAV/SetPoints/OutdoorAirFlow/Zone.mo
+++ b/Buildings/Controls/OBC/ASHRAE/G36_PR1/AHUs/MultiZone/VAV/SetPoints/OutdoorAirFlow/Zone.mo
@@ -169,11 +169,11 @@ protected
"Outdoor air per person"
annotation (Placement(transformation(extent={{-100,30},{-80,50}})));
- Buildings.Controls.OBC.CDL.Logical.Switch swi
+ Buildings.Controls.OBC.CDL.Continuous.Switch swi
"If there is occupancy sensor, then using the real time occupancy; otherwise, using the default occupancy"
annotation (Placement(transformation(extent={{-40,-10},{-20,10}})));
- Buildings.Controls.OBC.CDL.Logical.Switch swi1
+ Buildings.Controls.OBC.CDL.Continuous.Switch swi1
"Switch between cooling or heating distribution effectiveness"
annotation (Placement(transformation(extent={{-20,-160},{0,-140}})));
@@ -248,11 +248,11 @@ protected
"Closed window status when there is no window sensor"
annotation (Placement(transformation(extent={{-100,-80},{-80,-60}})));
- Buildings.Controls.OBC.CDL.Logical.Switch swi4
+ Buildings.Controls.OBC.CDL.Continuous.Switch swi4
"If window is open, the required outdoor airflow rate should be zero"
annotation (Placement(transformation(extent={{60,-60},{80,-40}})));
- Buildings.Controls.OBC.CDL.Logical.Switch swi5
+ Buildings.Controls.OBC.CDL.Continuous.Switch swi5
"If supply fan is off or it is not in occupied mode, then outdoor airflow rate should be zero"
annotation (Placement(transformation(extent={{120,-100},{140,-80}})));
diff --git a/Buildings/Controls/OBC/ASHRAE/G36_PR1/AHUs/MultiZone/VAV/SetPoints/ReturnFanDirectPressure.mo b/Buildings/Controls/OBC/ASHRAE/G36_PR1/AHUs/MultiZone/VAV/SetPoints/ReturnFanDirectPressure.mo
index c96d9e33334..ecb3cbe51e3 100644
--- a/Buildings/Controls/OBC/ASHRAE/G36_PR1/AHUs/MultiZone/VAV/SetPoints/ReturnFanDirectPressure.mo
+++ b/Buildings/Controls/OBC/ASHRAE/G36_PR1/AHUs/MultiZone/VAV/SetPoints/ReturnFanDirectPressure.mo
@@ -64,10 +64,10 @@ block ReturnFanDirectPressure
Buildings.Controls.OBC.CDL.Continuous.Line linRetFanStaPre
"Return fan static pressure setpoint"
annotation (Placement(transformation(extent={{60,-50},{80,-30}})));
- Buildings.Controls.OBC.CDL.Logical.Switch swi1
+ Buildings.Controls.OBC.CDL.Continuous.Switch swi1
"Exhaust air damper position"
annotation (Placement(transformation(extent={{80,10},{100,30}})));
- Buildings.Controls.OBC.CDL.Logical.Switch swi
+ Buildings.Controls.OBC.CDL.Continuous.Switch swi
"Return fan discharge static pressure setpoint"
annotation (Placement(transformation(extent={{80,-100},{100,-80}})));
diff --git a/Buildings/Controls/OBC/ASHRAE/G36_PR1/AHUs/MultiZone/VAV/SetPoints/SupplyFan.mo b/Buildings/Controls/OBC/ASHRAE/G36_PR1/AHUs/MultiZone/VAV/SetPoints/SupplyFan.mo
index 4a3dd328ddd..b3ab282a3bd 100644
--- a/Buildings/Controls/OBC/ASHRAE/G36_PR1/AHUs/MultiZone/VAV/SetPoints/SupplyFan.mo
+++ b/Buildings/Controls/OBC/ASHRAE/G36_PR1/AHUs/MultiZone/VAV/SetPoints/SupplyFan.mo
@@ -131,7 +131,7 @@ protected
Buildings.Controls.OBC.CDL.Continuous.Sources.Constant zerSpe(k=0)
"Zero fan speed when it becomes OFF"
annotation (Placement(transformation(extent={{20,-90},{40,-70}})));
- Buildings.Controls.OBC.CDL.Logical.Switch swi
+ Buildings.Controls.OBC.CDL.Continuous.Switch swi
"If fan is OFF, fan speed outputs to zero"
annotation (Placement(transformation(extent={{80,-90},{100,-110}})));
Buildings.Controls.OBC.CDL.Logical.Or or1
diff --git a/Buildings/Controls/OBC/ASHRAE/G36_PR1/AHUs/MultiZone/VAV/SetPoints/SupplySignals.mo b/Buildings/Controls/OBC/ASHRAE/G36_PR1/AHUs/MultiZone/VAV/SetPoints/SupplySignals.mo
index 45a93499643..189dea12b03 100644
--- a/Buildings/Controls/OBC/ASHRAE/G36_PR1/AHUs/MultiZone/VAV/SetPoints/SupplySignals.mo
+++ b/Buildings/Controls/OBC/ASHRAE/G36_PR1/AHUs/MultiZone/VAV/SetPoints/SupplySignals.mo
@@ -82,7 +82,7 @@ protected
final reverseActing=false)
"Controller for supply air temperature control signal (to be used by heating coil, cooling coil and economizer)"
annotation (Placement(transformation(extent={{-60,20},{-40,40}})));
- Buildings.Controls.OBC.CDL.Logical.Switch swi
+ Buildings.Controls.OBC.CDL.Continuous.Switch swi
"Switch to select supply temperature control signal based on status of supply fan"
annotation (Placement(transformation(extent={{0,50},{20,70}})));
Buildings.Controls.OBC.CDL.Continuous.Sources.Constant uHeaMaxCon(
diff --git a/Buildings/Controls/OBC/ASHRAE/G36_PR1/AHUs/MultiZone/VAV/SetPoints/SupplyTemperature.mo b/Buildings/Controls/OBC/ASHRAE/G36_PR1/AHUs/MultiZone/VAV/SetPoints/SupplyTemperature.mo
index 85417a3a0f6..00b9e783740 100644
--- a/Buildings/Controls/OBC/ASHRAE/G36_PR1/AHUs/MultiZone/VAV/SetPoints/SupplyTemperature.mo
+++ b/Buildings/Controls/OBC/ASHRAE/G36_PR1/AHUs/MultiZone/VAV/SetPoints/SupplyTemperature.mo
@@ -160,10 +160,10 @@ protected
TSupWarUpSetBac)
"Supply temperature setpoint under warm-up and setback mode"
annotation (Placement(transformation(extent={{20,-130},{40,-110}})));
- Buildings.Controls.OBC.CDL.Logical.Switch swi1
+ Buildings.Controls.OBC.CDL.Continuous.Switch swi1
"If operation mode is setup or cool-down, setpoint shall be 35 degC"
annotation (Placement(transformation(extent={{80,-60},{100,-40}})));
- Buildings.Controls.OBC.CDL.Logical.Switch swi2
+ Buildings.Controls.OBC.CDL.Continuous.Switch swi2
"If operation mode is setup or cool-down, setpoint shall be TSupSetMin"
annotation (Placement(transformation(extent={{20,-60},{40,-40}})));
Buildings.Controls.OBC.CDL.Continuous.Limiter TDea(
@@ -171,7 +171,7 @@ protected
uMin=294.15)
"Limiter that outputs the dead band value for the supply air temperature"
annotation (Placement(transformation(extent={{-100,80},{-80,100}})));
- Buildings.Controls.OBC.CDL.Logical.Switch swi3
+ Buildings.Controls.OBC.CDL.Continuous.Switch swi3
"Check output regarding supply fan status"
annotation (Placement(transformation(extent={{80,-10},{100,10}})));
Buildings.Controls.OBC.CDL.Integers.LessThreshold intLesThr(t=Buildings.Controls.OBC.ASHRAE.G36_PR1.Types.OperationModes.warmUp)
diff --git a/Buildings/Controls/OBC/ASHRAE/G36_PR1/AHUs/SingleZone/VAV/CoolingCoil.mo b/Buildings/Controls/OBC/ASHRAE/G36_PR1/AHUs/SingleZone/VAV/CoolingCoil.mo
index d02147ab10f..94c601aacce 100644
--- a/Buildings/Controls/OBC/ASHRAE/G36_PR1/AHUs/SingleZone/VAV/CoolingCoil.mo
+++ b/Buildings/Controls/OBC/ASHRAE/G36_PR1/AHUs/SingleZone/VAV/CoolingCoil.mo
@@ -55,7 +55,7 @@ protected
final k=Buildings.Controls.OBC.ASHRAE.G36_PR1.Types.ZoneStates.cooling)
"Cooling state value"
annotation (Placement(transformation(extent={{-80,-30},{-60,-10}})));
- Buildings.Controls.OBC.CDL.Logical.Switch switch "Switch to assign cooling coil control signal"
+ Buildings.Controls.OBC.CDL.Continuous.Switch switch "Switch to assign cooling coil control signal"
annotation (Placement(transformation(extent={{72,-10},{92,10}})));
Buildings.Controls.OBC.CDL.Continuous.Sources.Constant const(k=0) "Cooling off mode"
annotation (Placement(transformation(extent={{40,-30},{60,-10}})));
diff --git a/Buildings/Controls/OBC/ASHRAE/G36_PR1/AHUs/SingleZone/VAV/Economizers/Subsequences/Enable.mo b/Buildings/Controls/OBC/ASHRAE/G36_PR1/AHUs/SingleZone/VAV/Economizers/Subsequences/Enable.mo
index a8c1377b5a2..9ee95acb3b9 100644
--- a/Buildings/Controls/OBC/ASHRAE/G36_PR1/AHUs/SingleZone/VAV/Economizers/Subsequences/Enable.mo
+++ b/Buildings/Controls/OBC/ASHRAE/G36_PR1/AHUs/SingleZone/VAV/Economizers/Subsequences/Enable.mo
@@ -165,9 +165,9 @@ protected
Buildings.Controls.OBC.CDL.Continuous.Add add1(final k2=-1)
"Add block that determines difference the between TOut and TOutCut"
annotation (Placement(transformation(extent={{-140,244},{-120,264}})));
- Buildings.Controls.OBC.CDL.Logical.Switch outDamSwitch "Set maximum OA damper position to minimum at disable (after time delay)"
+ Buildings.Controls.OBC.CDL.Continuous.Switch outDamSwitch "Set maximum OA damper position to minimum at disable (after time delay)"
annotation (Placement(transformation(extent={{40,-150},{60,-130}})));
- Buildings.Controls.OBC.CDL.Logical.Switch minRetDamSwitch
+ Buildings.Controls.OBC.CDL.Continuous.Switch minRetDamSwitch
"Keep minimum RA damper position at physical maximum for a short time period after disable"
annotation (Placement(transformation(extent={{40,-250},{60,-230}})));
Buildings.Controls.OBC.CDL.Logical.Nor nor1 "Logical nor"
diff --git a/Buildings/Controls/OBC/ASHRAE/G36_PR1/AHUs/SingleZone/VAV/Economizers/Subsequences/Limits.mo b/Buildings/Controls/OBC/ASHRAE/G36_PR1/AHUs/SingleZone/VAV/Economizers/Subsequences/Limits.mo
index c63b72062b6..72e6cc7ebc3 100644
--- a/Buildings/Controls/OBC/ASHRAE/G36_PR1/AHUs/SingleZone/VAV/Economizers/Subsequences/Limits.mo
+++ b/Buildings/Controls/OBC/ASHRAE/G36_PR1/AHUs/SingleZone/VAV/Economizers/Subsequences/Limits.mo
@@ -152,12 +152,12 @@ protected
final limitAbove=true)
"Calculates OA damper position required to supply minimum outdoor airflow setpoint at current fan speed"
annotation (Placement(transformation(extent={{100,110},{120,130}})));
- Buildings.Controls.OBC.CDL.Logical.Switch enaDis
+ Buildings.Controls.OBC.CDL.Continuous.Switch enaDis
"Logical switch to enable damper position limit calculation or disable it (set min limit to physical minimum)"
annotation (Placement(transformation(extent={{82,-120},{102,-100}})));
Buildings.Controls.OBC.CDL.Logical.Not not1 "Logical not block"
annotation (Placement(transformation(extent={{-20,-80},{0,-60}})));
- Buildings.Controls.OBC.CDL.Logical.Switch enaDis1
+ Buildings.Controls.OBC.CDL.Continuous.Switch enaDis1
"Logical switch to enable damper position limit calculation or disable it (set max limit to physical minimum)"
annotation (Placement(transformation(extent={{80,-80},{100,-60}})));
Buildings.Controls.OBC.CDL.Integers.Sources.Constant conInt(
diff --git a/Buildings/Controls/OBC/ASHRAE/G36_PR1/AHUs/SingleZone/VAV/Economizers/Subsequences/Modulation.mo b/Buildings/Controls/OBC/ASHRAE/G36_PR1/AHUs/SingleZone/VAV/Economizers/Subsequences/Modulation.mo
index 5c62ebb7dd6..e56de976313 100644
--- a/Buildings/Controls/OBC/ASHRAE/G36_PR1/AHUs/SingleZone/VAV/Economizers/Subsequences/Modulation.mo
+++ b/Buildings/Controls/OBC/ASHRAE/G36_PR1/AHUs/SingleZone/VAV/Economizers/Subsequences/Modulation.mo
@@ -137,7 +137,7 @@ protected
Buildings.Controls.OBC.CDL.Continuous.Sources.Constant uMaxHeaCoi(final k=1)
"Maximal control loop signal for the heating coil"
annotation (Placement(transformation(extent={{-60,90},{-40,110}})));
- Buildings.Controls.OBC.CDL.Logical.Switch enaDis "Enable or disable the heating coil"
+ Buildings.Controls.OBC.CDL.Continuous.Switch enaDis "Enable or disable the heating coil"
annotation (Placement(transformation(extent={{76,30},{96,50}})));
Buildings.Controls.OBC.CDL.Continuous.Sources.Constant Off(
final k=0) "Off signal for heating coil"
diff --git a/Buildings/Controls/OBC/ASHRAE/G36_PR1/AHUs/SingleZone/VAV/SetPoints/ExhaustDamper.mo b/Buildings/Controls/OBC/ASHRAE/G36_PR1/AHUs/SingleZone/VAV/SetPoints/ExhaustDamper.mo
index 3b6409fa1ff..f0c0c73f385 100644
--- a/Buildings/Controls/OBC/ASHRAE/G36_PR1/AHUs/SingleZone/VAV/SetPoints/ExhaustDamper.mo
+++ b/Buildings/Controls/OBC/ASHRAE/G36_PR1/AHUs/SingleZone/VAV/SetPoints/ExhaustDamper.mo
@@ -45,7 +45,7 @@ block ExhaustDamper
Buildings.Controls.OBC.CDL.Continuous.Line exhDamPos
"Linearly map exhaust damper position to the outdoor air damper position"
annotation (Placement(transformation(extent={{20,-10},{40,10}})));
- Buildings.Controls.OBC.CDL.Logical.Switch swi1
+ Buildings.Controls.OBC.CDL.Continuous.Switch swi1
"Check if exhaust damper should be open"
annotation (Placement(transformation(extent={{60,-60},{80,-40}})));
Buildings.Controls.OBC.CDL.Continuous.Hysteresis greThr(
diff --git a/Buildings/Controls/OBC/ASHRAE/G36_PR1/AHUs/SingleZone/VAV/SetPoints/OutsideAirFlow.mo b/Buildings/Controls/OBC/ASHRAE/G36_PR1/AHUs/SingleZone/VAV/SetPoints/OutsideAirFlow.mo
index f1fef63c331..092343a7e27 100644
--- a/Buildings/Controls/OBC/ASHRAE/G36_PR1/AHUs/SingleZone/VAV/SetPoints/OutsideAirFlow.mo
+++ b/Buildings/Controls/OBC/ASHRAE/G36_PR1/AHUs/SingleZone/VAV/SetPoints/OutsideAirFlow.mo
@@ -83,20 +83,20 @@ protected
have_occSen
"Outdoor airflow rate per person"
annotation (Placement(transformation(extent={{-160,150},{-140,170}})));
- Buildings.Controls.OBC.CDL.Logical.Switch swi
+ Buildings.Controls.OBC.CDL.Continuous.Switch swi
"Switch for enabling occupancy sensor input"
annotation (Placement(transformation(extent={{-60,38},{-40,58}})));
- Buildings.Controls.OBC.CDL.Logical.Switch swi1
+ Buildings.Controls.OBC.CDL.Continuous.Switch swi1
"Switch between cooling or heating distribution effectiveness"
annotation (Placement(transformation(extent={{-40,-70},{-20,-50}})));
Buildings.Controls.OBC.CDL.Continuous.Division zonOutAirRate
"Required zone outdoor airflow rate"
annotation (Placement(transformation(extent={{20,20},{40,40}})));
- Buildings.Controls.OBC.CDL.Logical.Switch swi2
+ Buildings.Controls.OBC.CDL.Continuous.Switch swi2
"If window is open or it is not in occupied mode, the required outdoor
airflow rate should be zero"
annotation (Placement(transformation(extent={{80,20},{100,0}})));
- Buildings.Controls.OBC.CDL.Logical.Switch swi3
+ Buildings.Controls.OBC.CDL.Continuous.Switch swi3
"If supply fan is off, then outdoor airflow rate should be zero."
annotation (Placement(transformation(extent={{140,0},{160,20}})));
Buildings.Controls.OBC.CDL.Continuous.Hysteresis hys(
diff --git a/Buildings/Controls/OBC/ASHRAE/G36_PR1/AHUs/SingleZone/VAV/SetPoints/Supply.mo b/Buildings/Controls/OBC/ASHRAE/G36_PR1/AHUs/SingleZone/VAV/SetPoints/Supply.mo
index 07139ca52ce..af693718903 100644
--- a/Buildings/Controls/OBC/ASHRAE/G36_PR1/AHUs/SingleZone/VAV/SetPoints/Supply.mo
+++ b/Buildings/Controls/OBC/ASHRAE/G36_PR1/AHUs/SingleZone/VAV/SetPoints/Supply.mo
@@ -69,7 +69,7 @@ block Supply "Supply air set point for single zone VAV system"
CDL.Interfaces.BooleanInput uFan "Supply fan status"
annotation (Placement(transformation(extent={{-140,-160},{-100,-120}}),
iconTransformation(extent={{-140,-120},{-100,-80}})));
- CDL.Logical.Switch switch "Switch to assign control signal"
+ CDL.Continuous.Switch switch "Switch to assign control signal"
annotation (Placement(transformation(extent={{120,-70},{140,-50}})));
CDL.Continuous.Sources.Constant fanOff(k=0) "Fan off status"
annotation (Placement(transformation(extent={{40,10},{60,30}})));
diff --git a/Buildings/Controls/OBC/ASHRAE/G36_PR1/Generic/SetPoints/OperationMode.mo b/Buildings/Controls/OBC/ASHRAE/G36_PR1/Generic/SetPoints/OperationMode.mo
index 3fe76b8f6c1..ce7b0ac6003 100644
--- a/Buildings/Controls/OBC/ASHRAE/G36_PR1/Generic/SetPoints/OperationMode.mo
+++ b/Buildings/Controls/OBC/ASHRAE/G36_PR1/Generic/SetPoints/OperationMode.mo
@@ -101,9 +101,9 @@ protected
final k=0)
"Index to indicate unoccupied period"
annotation (Placement(transformation(extent={{0,340},{20,360}})));
- Buildings.Controls.OBC.CDL.Logical.Switch corCooDowTim "Corrected cool down period"
+ Buildings.Controls.OBC.CDL.Continuous.Switch corCooDowTim "Corrected cool down period"
annotation (Placement(transformation(extent={{-220,240},{-200,260}})));
- Buildings.Controls.OBC.CDL.Logical.Switch corWarUpTim "Corrected warm-up period"
+ Buildings.Controls.OBC.CDL.Continuous.Switch corWarUpTim "Corrected warm-up period"
annotation (Placement(transformation(extent={{-200,140},{-180,160}})));
Buildings.Controls.OBC.CDL.Integers.GreaterThreshold intGreThr(
final t=4) "Check if the number of cold zones is not less than than 5"
@@ -256,16 +256,16 @@ protected
Buildings.Controls.OBC.CDL.Logical.Or or6
"Check if it is in any of the 6 modes except unoccupied mode"
annotation (Placement(transformation(extent={{40,-370},{60,-350}})));
- Buildings.Controls.OBC.CDL.Logical.Switch swi
+ Buildings.Controls.OBC.CDL.Continuous.Switch swi
"Switch between occupied mode index and unoccupied period index"
annotation (Placement(transformation(extent={{160,310},{180,330}})));
- Buildings.Controls.OBC.CDL.Logical.Switch swi3
+ Buildings.Controls.OBC.CDL.Continuous.Switch swi3
"If the Cool-down, warm-up, or Occupied mode is on, then setback mode should not be activated."
annotation (Placement(transformation(extent={{60,20},{80,40}})));
- Buildings.Controls.OBC.CDL.Logical.Switch swi4
+ Buildings.Controls.OBC.CDL.Continuous.Switch swi4
"If the Cool-down, warm-up, or Occupied mode is on, then freeze protection setback mode should not be activated."
annotation (Placement(transformation(extent={{60,-100},{80,-80}})));
- Buildings.Controls.OBC.CDL.Logical.Switch swi5
+ Buildings.Controls.OBC.CDL.Continuous.Switch swi5
"If the Cool-down, warm-up, or Occupied mode is on, then setup mode should not be activated."
annotation (Placement(transformation(extent={{60,-200},{80,-180}})));
Buildings.Controls.OBC.CDL.Logical.Not not5 "Logical not"
@@ -283,13 +283,13 @@ protected
final message="Level 4 alarm: window open during modes other than occupied mode")
"Generate alarm message when window open during modes other than occupied mode"
annotation (Placement(transformation(extent={{240,80},{260,100}})));
- Buildings.Controls.OBC.CDL.Logical.Switch swi1
+ Buildings.Controls.OBC.CDL.Continuous.Switch swi1
"If occupied mode is on, then cool down mode should not be activated"
annotation (Placement(transformation(extent={{140,270},{160,290}})));
Buildings.Controls.OBC.CDL.Conversions.RealToInteger setBacMod1
"Convert Real number to Integer number"
annotation (Placement(transformation(extent={{180,270},{200,290}})));
- Buildings.Controls.OBC.CDL.Logical.Switch swi2
+ Buildings.Controls.OBC.CDL.Continuous.Switch swi2
"If occupied mode is on, then warm-up mode should not be activated."
annotation (Placement(transformation(extent={{140,180},{160,200}})));
Buildings.Controls.OBC.CDL.Conversions.RealToInteger setBacMod2
diff --git a/Buildings/Controls/OBC/ASHRAE/G36_PR1/Generic/SetPoints/TrimAndRespond.mo b/Buildings/Controls/OBC/ASHRAE/G36_PR1/Generic/SetPoints/TrimAndRespond.mo
index 2d2f868dac3..1f3f34d1b3a 100644
--- a/Buildings/Controls/OBC/ASHRAE/G36_PR1/Generic/SetPoints/TrimAndRespond.mo
+++ b/Buildings/Controls/OBC/ASHRAE/G36_PR1/Generic/SetPoints/TrimAndRespond.mo
@@ -39,7 +39,7 @@ block TrimAndRespond "Block to inplement trim and respond logic"
Buildings.Controls.OBC.CDL.Continuous.GreaterThreshold greThr
"Check if the real requests is more than ignored requests setting"
annotation (Placement(transformation(extent={{20,-60},{40,-40}})));
- Buildings.Controls.OBC.CDL.Logical.Switch netRes "Net setpoint reset value"
+ Buildings.Controls.OBC.CDL.Continuous.Switch netRes "Net setpoint reset value"
annotation (Placement(transformation(extent={{160,-20},{180,-40}})));
Buildings.Controls.OBC.CDL.Continuous.Sources.Constant resAmoCon(
final k=resAmo)
@@ -57,16 +57,16 @@ block TrimAndRespond "Block to inplement trim and respond logic"
final y_start=iniSet)
"Output the input signal with a unit delay"
annotation (Placement(transformation(extent={{-100,96},{-80,116}})));
- Buildings.Controls.OBC.CDL.Logical.Switch swi
+ Buildings.Controls.OBC.CDL.Continuous.Switch swi
"Switch between initial setpoint and reseted setpoint"
annotation (Placement(transformation(extent={{160,180},{180,160}})));
- Buildings.Controls.OBC.CDL.Logical.Switch swi1
+ Buildings.Controls.OBC.CDL.Continuous.Switch swi1
"Before instant (device ON + delTim + samplePeriod), the setpoint should not be trimmed"
annotation (Placement(transformation(extent={{120,0},{140,20}})));
- Buildings.Controls.OBC.CDL.Logical.Switch swi2
+ Buildings.Controls.OBC.CDL.Continuous.Switch swi2
"Reinitialize setpoint to initial setting when device become OFF"
annotation (Placement(transformation(extent={{100,130},{120,150}})));
- Buildings.Controls.OBC.CDL.Logical.Switch swi3 "Logical switch"
+ Buildings.Controls.OBC.CDL.Continuous.Switch swi3 "Logical switch"
annotation (Placement(transformation(extent={{120,-160},{140,-140}})));
Buildings.Controls.OBC.CDL.Discrete.Sampler sampler(
final samplePeriod=samplePeriod)
diff --git a/Buildings/Controls/OBC/ASHRAE/G36_PR1/Generic/SetPoints/Validation/TrimAndRespond.mo b/Buildings/Controls/OBC/ASHRAE/G36_PR1/Generic/SetPoints/Validation/TrimAndRespond.mo
index 424fbd6aa51..7557e82eb22 100644
--- a/Buildings/Controls/OBC/ASHRAE/G36_PR1/Generic/SetPoints/Validation/TrimAndRespond.mo
+++ b/Buildings/Controls/OBC/ASHRAE/G36_PR1/Generic/SetPoints/Validation/TrimAndRespond.mo
@@ -56,7 +56,7 @@ model TrimAndRespond "Model validates the trim and respond block"
annotation (Placement(transformation(extent={{-88,-20},{-68,0}})));
Buildings.Controls.OBC.CDL.Logical.Not not1 "Logical not"
annotation (Placement(transformation(extent={{20,-20},{40,0}})));
- Buildings.Controls.OBC.CDL.Logical.Switch swi "Switch between two Real signals"
+ Buildings.Controls.OBC.CDL.Continuous.Switch swi "Switch between two Real signals"
annotation (Placement(transformation(extent={{-48,-50},{-28,-30}})));
Buildings.Controls.OBC.CDL.Continuous.Sources.Constant con1(final k=0)
"Zero request when device is OFF"
diff --git a/Buildings/Controls/OBC/ASHRAE/G36_PR1/TerminalUnits/Reheat/DamperValves.mo b/Buildings/Controls/OBC/ASHRAE/G36_PR1/TerminalUnits/Reheat/DamperValves.mo
index 86265bbaa64..d8003d04797 100644
--- a/Buildings/Controls/OBC/ASHRAE/G36_PR1/TerminalUnits/Reheat/DamperValves.mo
+++ b/Buildings/Controls/OBC/ASHRAE/G36_PR1/TerminalUnits/Reheat/DamperValves.mo
@@ -230,17 +230,17 @@ block DamperValves
final y_reset=0) if not have_pressureIndependentDamper
"Damper position controller"
annotation (Placement(transformation(extent={{280,220},{300,240}})));
- Buildings.Controls.OBC.CDL.Logical.Switch swi
+ Buildings.Controls.OBC.CDL.Continuous.Switch swi
"Output active cooling airflow according to cooling control signal"
annotation (Placement(transformation(extent={{140,260},{160,280}})));
- Buildings.Controls.OBC.CDL.Logical.Switch swi1 "Output active airflow when it is in deadband state"
+ Buildings.Controls.OBC.CDL.Continuous.Switch swi1 "Output active airflow when it is in deadband state"
annotation (Placement(transformation(extent={{132,40},{152,60}})));
- Buildings.Controls.OBC.CDL.Logical.Switch swi2 "Acitive heating airflow rate"
+ Buildings.Controls.OBC.CDL.Continuous.Switch swi2 "Acitive heating airflow rate"
annotation (Placement(transformation(extent={{80,-260},{100,-240}})));
- Buildings.Controls.OBC.CDL.Logical.Switch swi4
+ Buildings.Controls.OBC.CDL.Continuous.Switch swi4
"Output active heating airflow according to heating control signal"
annotation (Placement(transformation(extent={{140,-260},{160,-240}})));
- Buildings.Controls.OBC.CDL.Logical.Switch swi5 "Output active cooling airflow "
+ Buildings.Controls.OBC.CDL.Continuous.Switch swi5 "Output active cooling airflow "
annotation (Placement(transformation(extent={{60,200},{80,220}})));
protected
@@ -327,9 +327,9 @@ protected
final k=Buildings.Controls.OBC.ASHRAE.G36_PR1.Types.OperationModes.unoccupied)
"Constant signal for unoccupied mode"
annotation (Placement(transformation(extent={{170,-322},{190,-302}})));
- Buildings.Controls.OBC.CDL.Logical.Switch watValPosUno "Output hot water valve position"
+ Buildings.Controls.OBC.CDL.Continuous.Switch watValPosUno "Output hot water valve position"
annotation (Placement(transformation(extent={{280,-30},{300,-10}})));
- Buildings.Controls.OBC.CDL.Logical.Switch damPosUno "Output damper position"
+ Buildings.Controls.OBC.CDL.Continuous.Switch damPosUno "Output damper position"
annotation (Placement(transformation(extent={{280,60},{300,80}})));
Buildings.Controls.OBC.CDL.Logical.Not not5 "Negation of input signal"
annotation (Placement(transformation(extent={{200,-260},{220,-240}})));
@@ -337,14 +337,14 @@ protected
final k=TDisMin)
"Lowest allowed discharge air temperature"
annotation (Placement(transformation(extent={{-68,-108},{-48,-88}})));
- Buildings.Controls.OBC.CDL.Logical.Switch swi6
+ Buildings.Controls.OBC.CDL.Continuous.Switch swi6
"Output hot water valve position in case of low discharge air temperature"
annotation (Placement(transformation(extent={{-30,-90},{-10,-70}})));
Buildings.Controls.OBC.CDL.Logical.Or or2 "Logical not"
annotation (Placement(transformation(extent={{-68,-64},{-48,-44}})));
Buildings.Controls.OBC.CDL.Logical.Not not3 "Logical not"
annotation (Placement(transformation(extent={{-120,120},{-100,140}})));
- Buildings.Controls.OBC.CDL.Logical.Switch swi3
+ Buildings.Controls.OBC.CDL.Continuous.Switch swi3
"Output hot water valve position in case of low discharge air temperature"
annotation (Placement(transformation(extent={{104,-82},{124,-62}})));
Buildings.Controls.OBC.CDL.Logical.Not not6 "Negation of input signal"
diff --git a/Buildings/Controls/OBC/ASHRAE/G36_PR1/TerminalUnits/Reheat/SetPoints/ActiveAirFlow.mo b/Buildings/Controls/OBC/ASHRAE/G36_PR1/TerminalUnits/Reheat/SetPoints/ActiveAirFlow.mo
index 20fe13cc72f..b0de585f22e 100644
--- a/Buildings/Controls/OBC/ASHRAE/G36_PR1/TerminalUnits/Reheat/SetPoints/ActiveAirFlow.mo
+++ b/Buildings/Controls/OBC/ASHRAE/G36_PR1/TerminalUnits/Reheat/SetPoints/ActiveAirFlow.mo
@@ -119,16 +119,16 @@ block ActiveAirFlow
Buildings.Controls.OBC.CDL.Continuous.GreaterThreshold greThr1
"Check if zone minimum airflow setpoint VDisSetMin_flow is non-zero"
annotation (Placement(transformation(extent={{-80,-410},{-60,-390}})));
- Buildings.Controls.OBC.CDL.Logical.Switch swi
+ Buildings.Controls.OBC.CDL.Continuous.Switch swi
"Reset occupied minimum airflow according to occupancy"
annotation (Placement(transformation(extent={{80,-290},{100,-270}})));
- Buildings.Controls.OBC.CDL.Logical.Switch swi1
+ Buildings.Controls.OBC.CDL.Continuous.Switch swi1
"Reset occupied minimum airflow according to window status"
annotation (Placement(transformation(extent={{200,-510},{220,-490}})));
- Buildings.Controls.OBC.CDL.Logical.Switch swi2
+ Buildings.Controls.OBC.CDL.Continuous.Switch swi2
"Reset occupied minimum airflow setpoint according to minimum controllable airflow"
annotation (Placement(transformation(extent={{140,-410},{160,-390}})));
- Buildings.Controls.OBC.CDL.Logical.Switch swi3 if have_CO2Sen
+ Buildings.Controls.OBC.CDL.Continuous.Switch swi3 if have_CO2Sen
"Switch between zero signal and CO2 control loop signal depending on the operation mode"
annotation (Placement(transformation(extent={{-80,-100},{-60,-120}})));
Buildings.Controls.OBC.CDL.Logical.And and1 "Logical and"
@@ -248,40 +248,40 @@ protected
Buildings.Controls.OBC.CDL.Integers.Equal intEqu4
"Check if current operation mode is setback mode"
annotation (Placement(transformation(extent={{40,220},{60,240}})));
- Buildings.Controls.OBC.CDL.Logical.Switch swi4
+ Buildings.Controls.OBC.CDL.Continuous.Switch swi4
"Select cooling maximum based on operation mode"
annotation (Placement(transformation(extent={{-100,290},{-80,310}})));
- Buildings.Controls.OBC.CDL.Logical.Switch swi8
+ Buildings.Controls.OBC.CDL.Continuous.Switch swi8
"Select heating maximum based on operation mode"
annotation (Placement(transformation(extent={{-100,260},{-80,280}})));
- Buildings.Controls.OBC.CDL.Logical.Switch swi9
+ Buildings.Controls.OBC.CDL.Continuous.Switch swi9
"Select cooling maximum based on operation mode"
annotation (Placement(transformation(extent={{-100,220},{-80,240}})));
- Buildings.Controls.OBC.CDL.Logical.Switch swi17
+ Buildings.Controls.OBC.CDL.Continuous.Switch swi17
"Select heating minimum based on operation mode"
annotation (Placement(transformation(extent={{120,290},{140,310}})));
- Buildings.Controls.OBC.CDL.Logical.Switch swi18
+ Buildings.Controls.OBC.CDL.Continuous.Switch swi18
"Select heating maximum based on operation mode"
annotation (Placement(transformation(extent={{120,260},{140,280}})));
- Buildings.Controls.OBC.CDL.Logical.Switch swi22
+ Buildings.Controls.OBC.CDL.Continuous.Switch swi22
"Select heating minimum based on operation mode"
annotation (Placement(transformation(extent={{120,220},{140,240}})));
- Buildings.Controls.OBC.CDL.Logical.Switch swi23
+ Buildings.Controls.OBC.CDL.Continuous.Switch swi23
"Select heating maximum based on operation mode"
annotation (Placement(transformation(extent={{120,190},{140,210}})));
- Buildings.Controls.OBC.CDL.Logical.Switch swi24
+ Buildings.Controls.OBC.CDL.Continuous.Switch swi24
"Select cooling maximum based on operation mode"
annotation (Placement(transformation(extent={{-100,150},{-80,170}})));
- Buildings.Controls.OBC.CDL.Logical.Switch swi25
+ Buildings.Controls.OBC.CDL.Continuous.Switch swi25
"Select cooling minimum based on operation mode"
annotation (Placement(transformation(extent={{-100,120},{-80,140}})));
- Buildings.Controls.OBC.CDL.Logical.Switch swi26
+ Buildings.Controls.OBC.CDL.Continuous.Switch swi26
"Select minimum based on operation mode"
annotation (Placement(transformation(extent={{-100,90},{-80,110}})));
- Buildings.Controls.OBC.CDL.Logical.Switch swi27
+ Buildings.Controls.OBC.CDL.Continuous.Switch swi27
"Select heating minimum based on operation mode"
annotation (Placement(transformation(extent={{-100,60},{-80,80}})));
- Buildings.Controls.OBC.CDL.Logical.Switch swi28
+ Buildings.Controls.OBC.CDL.Continuous.Switch swi28
"Select heating maximum based on operation mode"
annotation (Placement(transformation(extent={{-100,30},{-80,50}})));
Buildings.Controls.OBC.CDL.Continuous.Max maxInp "Find greater input"
diff --git a/Buildings/Controls/OBC/ASHRAE/G36_PR1/TerminalUnits/Reheat/SystemRequests.mo b/Buildings/Controls/OBC/ASHRAE/G36_PR1/TerminalUnits/Reheat/SystemRequests.mo
index ab8607d5409..213169d526d 100644
--- a/Buildings/Controls/OBC/ASHRAE/G36_PR1/TerminalUnits/Reheat/SystemRequests.mo
+++ b/Buildings/Controls/OBC/ASHRAE/G36_PR1/TerminalUnits/Reheat/SystemRequests.mo
@@ -319,38 +319,38 @@ protected
annotation (Placement(transformation(extent={{-80,240},{-60,260}})));
Buildings.Controls.OBC.CDL.Logical.Sources.Constant con5(k=true) "Constant true"
annotation (Placement(transformation(extent={{60,290},{80,310}})));
- Buildings.Controls.OBC.CDL.Logical.Switch swi
+ Buildings.Controls.OBC.CDL.Continuous.Switch swi
"Use setpoint different value when half sample period time has passed"
annotation (Placement(transformation(extent={{40,400},{60,420}})));
- Buildings.Controls.OBC.CDL.Logical.Switch swi1 "Output 3 or other request "
+ Buildings.Controls.OBC.CDL.Continuous.Switch swi1 "Output 3 or other request "
annotation (Placement(transformation(extent={{100,190},{120,210}})));
- Buildings.Controls.OBC.CDL.Logical.Switch swi2 "Output 2 or other request "
+ Buildings.Controls.OBC.CDL.Continuous.Switch swi2 "Output 2 or other request "
annotation (Placement(transformation(extent={{100,130},{120,150}})));
- Buildings.Controls.OBC.CDL.Logical.Switch swi3 "Output 0 or 1 request "
+ Buildings.Controls.OBC.CDL.Continuous.Switch swi3 "Output 0 or 1 request "
annotation (Placement(transformation(extent={{100,80},{120,100}})));
- Buildings.Controls.OBC.CDL.Logical.Switch swi4 "Output 3 or other request "
+ Buildings.Controls.OBC.CDL.Continuous.Switch swi4 "Output 3 or other request "
annotation (Placement(transformation(extent={{100,-50},{120,-30}})));
- Buildings.Controls.OBC.CDL.Logical.Switch swi5 "Output 2 or other request "
+ Buildings.Controls.OBC.CDL.Continuous.Switch swi5 "Output 2 or other request "
annotation (Placement(transformation(extent={{100,-110},{120,-90}})));
- Buildings.Controls.OBC.CDL.Logical.Switch swi6 "Output 0 or 1 request "
+ Buildings.Controls.OBC.CDL.Continuous.Switch swi6 "Output 0 or 1 request "
annotation (Placement(transformation(extent={{100,-160},{120,-140}})));
- Buildings.Controls.OBC.CDL.Logical.Switch swi7 if have_heaWatCoi
+ Buildings.Controls.OBC.CDL.Continuous.Switch swi7 if have_heaWatCoi
"Output 3 or other request "
annotation (Placement(transformation(extent={{100,-250},{120,-230}})));
- Buildings.Controls.OBC.CDL.Logical.Switch swi8 if have_heaWatCoi
+ Buildings.Controls.OBC.CDL.Continuous.Switch swi8 if have_heaWatCoi
"Output 2 or other request "
annotation (Placement(transformation(extent={{100,-310},{120,-290}})));
- Buildings.Controls.OBC.CDL.Logical.Switch swi9 if have_heaWatCoi
+ Buildings.Controls.OBC.CDL.Continuous.Switch swi9 if have_heaWatCoi
"Output 0 or 1 request "
annotation (Placement(transformation(extent={{100,-360},{120,-340}})));
- Buildings.Controls.OBC.CDL.Logical.Switch swi10 if (have_heaWatCoi and
+ Buildings.Controls.OBC.CDL.Continuous.Switch swi10 if (have_heaWatCoi and
have_heaPla)
"Output 0 or 1 request "
annotation (Placement(transformation(extent={{100,-440},{120,-420}})));
Buildings.Controls.OBC.CDL.Logical.TrueHoldWithReset truHol(duration=samplePeriod)
"Hold true signal for sample period of time"
annotation (Placement(transformation(extent={{120,330},{140,350}})));
- Buildings.Controls.OBC.CDL.Logical.LogicalSwitch logSwi "Logical switch"
+ Buildings.Controls.OBC.CDL.Logical.Switch logSwi "Logical switch"
annotation (Placement(transformation(extent={{120,300},{140,280}})));
Buildings.Controls.OBC.CDL.Logical.TrueDelay tim1(delayTime=durTimTem)
"Check if it is more than durTimTem"
diff --git a/Buildings/Controls/OBC/ASHRAE/G36_PR1/TerminalUnits/SetPoints/Validation/ZoneTemperatures.mo b/Buildings/Controls/OBC/ASHRAE/G36_PR1/TerminalUnits/SetPoints/Validation/ZoneTemperatures.mo
index cb6df4f6d5c..9727758015c 100644
--- a/Buildings/Controls/OBC/ASHRAE/G36_PR1/TerminalUnits/SetPoints/Validation/ZoneTemperatures.mo
+++ b/Buildings/Controls/OBC/ASHRAE/G36_PR1/TerminalUnits/SetPoints/Validation/ZoneTemperatures.mo
@@ -71,10 +71,10 @@ model ZoneTemperatures "Validate block for zone set point"
final k=0)
"Zero adjustment"
annotation (Placement(transformation(extent={{-120,-10},{-100,10}})));
- Buildings.Controls.OBC.CDL.Logical.Switch swi1
+ Buildings.Controls.OBC.CDL.Continuous.Switch swi1
"Switch to zero adjustment when window is open"
annotation (Placement(transformation(extent={{-20,-30},{0,-10}})));
- Buildings.Controls.OBC.CDL.Logical.Switch swi2
+ Buildings.Controls.OBC.CDL.Continuous.Switch swi2
"Switch to zero adjustment when window is open"
annotation (Placement(transformation(extent={{-20,10},{0,30}})));
diff --git a/Buildings/Controls/OBC/ASHRAE/G36_PR1/TerminalUnits/SetPoints/ZoneTemperatures.mo b/Buildings/Controls/OBC/ASHRAE/G36_PR1/TerminalUnits/SetPoints/ZoneTemperatures.mo
index 289b00e66da..e6de73c79dc 100644
--- a/Buildings/Controls/OBC/ASHRAE/G36_PR1/TerminalUnits/SetPoints/ZoneTemperatures.mo
+++ b/Buildings/Controls/OBC/ASHRAE/G36_PR1/TerminalUnits/SetPoints/ZoneTemperatures.mo
@@ -384,73 +384,73 @@ protected
Buildings.Controls.OBC.CDL.Continuous.Greater gre2
"Check whether heating setpoint exceeds cooling setpoint minus 0.56 degC"
annotation (Placement(transformation(extent={{220,-590},{240,-570}})));
- Buildings.Controls.OBC.CDL.Logical.Switch swi
+ Buildings.Controls.OBC.CDL.Continuous.Switch swi
"Switch between occupied and unoccupied cooling setpoint"
annotation (Placement(transformation(extent={{-300,520},{-280,540}})));
- Buildings.Controls.OBC.CDL.Logical.Switch swi1
+ Buildings.Controls.OBC.CDL.Continuous.Switch swi1
"Switch between occupied and unoccupied heating setpoint"
annotation (Placement(transformation(extent={{-300,440},{-280,460}})));
- Buildings.Controls.OBC.CDL.Logical.Switch swi2
+ Buildings.Controls.OBC.CDL.Continuous.Switch swi2
"Setpoint can only be adjusted in occupied mode"
annotation (Placement(transformation(extent={{-120,360},{-100,340}})));
- Buildings.Controls.OBC.CDL.Logical.Switch swi3
+ Buildings.Controls.OBC.CDL.Continuous.Switch swi3
"Setpoint can only be adjusted in occupied mode"
annotation (Placement(transformation(extent={{220,260},{240,240}})));
- Buildings.Controls.OBC.CDL.Logical.Switch swi4
+ Buildings.Controls.OBC.CDL.Continuous.Switch swi4
"If there is no cooling adjustment, zero adjust"
annotation (Placement(transformation(extent={{-280,320},{-260,340}})));
- Buildings.Controls.OBC.CDL.Logical.Switch swi5
+ Buildings.Controls.OBC.CDL.Continuous.Switch swi5
"If there is no heating adjustment, zero adjust"
annotation (Placement(transformation(extent={{0,240},{20,260}})));
- Buildings.Controls.OBC.CDL.Logical.Switch swi6
+ Buildings.Controls.OBC.CDL.Continuous.Switch swi6
"If there is only one common adjust for both heating and cooling, use the adjust value from cooling one"
annotation (Placement(transformation(extent={{80,240},{100,260}})));
- Buildings.Controls.OBC.CDL.Logical.Switch swi7
+ Buildings.Controls.OBC.CDL.Continuous.Switch swi7
"Ensure heating setpoint being not higher than cooling setpoint minus 0.56 degC"
annotation (Placement(transformation(extent={{280,-590},{300,-570}})));
- Buildings.Controls.OBC.CDL.Logical.Switch swi8
+ Buildings.Controls.OBC.CDL.Continuous.Switch swi8
"Ensure unoccupied heating setppint being lower than occupied one"
annotation (Placement(transformation(extent={{100,-610},{120,-590}})));
- Buildings.Controls.OBC.CDL.Logical.Switch swi9
+ Buildings.Controls.OBC.CDL.Continuous.Switch swi9
"Ensure unoccupied cooling setppint being higher than occupied one"
annotation (Placement(transformation(extent={{100,-550},{120,-530}})));
- Buildings.Controls.OBC.CDL.Logical.Switch swi10
+ Buildings.Controls.OBC.CDL.Continuous.Switch swi10
"Switch between occupied and unoccupied cooling setpoint"
annotation (Placement(transformation(extent={{220,80},{240,100}})));
- Buildings.Controls.OBC.CDL.Logical.Switch swi11
+ Buildings.Controls.OBC.CDL.Continuous.Switch swi11
"Switch between occupied and unoccupied cooling setpoint"
annotation (Placement(transformation(extent={{220,-140},{240,-120}})));
- Buildings.Controls.OBC.CDL.Logical.Switch swi12
+ Buildings.Controls.OBC.CDL.Continuous.Switch swi12
"Increase cooling setpoint when the zone is unpopulated by more than 5 minutes"
annotation (Placement(transformation(extent={{160,-280},{180,-260}})));
- Buildings.Controls.OBC.CDL.Logical.Switch swi13
+ Buildings.Controls.OBC.CDL.Continuous.Switch swi13
"Decrease heating setpoint when the zone is unpopulated by more than 5 minutes"
annotation (Placement(transformation(extent={{160,-320},{180,-300}})));
- Buildings.Controls.OBC.CDL.Logical.Switch swi14
+ Buildings.Controls.OBC.CDL.Continuous.Switch swi14
"Switch to TZonCooSetWinOpe when window is open"
annotation (Placement(transformation(extent={{-180,-460},{-160,-440}})));
- Buildings.Controls.OBC.CDL.Logical.Switch swi15
+ Buildings.Controls.OBC.CDL.Continuous.Switch swi15
"Switch to TZonHeaSetWinOpe when window is open"
annotation (Placement(transformation(extent={{-60,-460},{-40,-440}})));
- Buildings.Controls.OBC.CDL.Logical.Switch swi16
+ Buildings.Controls.OBC.CDL.Continuous.Switch swi16
"Generate level 4 alarm when window is open during modes other than occupied"
annotation (Placement(transformation(extent={{-100,-420},{-80,-400}})));
- Buildings.Controls.OBC.CDL.Logical.Switch swi17
+ Buildings.Controls.OBC.CDL.Continuous.Switch swi17
"If it is occupied mode, cooling setpoint should be limited"
annotation (Placement(transformation(extent={{-180,-550},{-160,-530}})));
- Buildings.Controls.OBC.CDL.Logical.Switch swi18
+ Buildings.Controls.OBC.CDL.Continuous.Switch swi18
"If it is occupied mode, heating setpoint should be limited"
annotation (Placement(transformation(extent={{-180,-610},{-160,-590}})));
- Buildings.Controls.OBC.CDL.Logical.Switch swi19
+ Buildings.Controls.OBC.CDL.Continuous.Switch swi19
"If there is occupancy sensor, update heating setpoint according to the occupancy"
annotation (Placement(transformation(extent={{220,-320},{240,-300}})));
- Buildings.Controls.OBC.CDL.Logical.Switch swi20
+ Buildings.Controls.OBC.CDL.Continuous.Switch swi20
"If there is occupancy sensor, update cooling setpoint according to the occupancy"
annotation (Placement(transformation(extent={{220,-280},{240,-260}})));
- Buildings.Controls.OBC.CDL.Logical.Switch swi21
+ Buildings.Controls.OBC.CDL.Continuous.Switch swi21
"If there is window status sensor, update heating setpoint according to the window status"
annotation (Placement(transformation(extent={{160,-480},{180,-460}})));
- Buildings.Controls.OBC.CDL.Logical.Switch swi22
+ Buildings.Controls.OBC.CDL.Continuous.Switch swi22
"If there is window status sensor, update cooling setpoint according to the window status"
annotation (Placement(transformation(extent={{100,-460},{120,-440}})));
Buildings.Controls.OBC.CDL.Integers.Equal intEqu7
diff --git a/Buildings/Controls/OBC/CDL/Logical/LogicalSwitch.mo b/Buildings/Controls/OBC/CDL/Continuous/Switch.mo
similarity index 55%
rename from Buildings/Controls/OBC/CDL/Logical/LogicalSwitch.mo
rename to Buildings/Controls/OBC/CDL/Continuous/Switch.mo
index 8b6c66d50aa..04f1953b2c4 100644
--- a/Buildings/Controls/OBC/CDL/Logical/LogicalSwitch.mo
+++ b/Buildings/Controls/OBC/CDL/Continuous/Switch.mo
@@ -1,17 +1,17 @@
-within Buildings.Controls.OBC.CDL.Logical;
-block LogicalSwitch
- "Switch between two boolean signals"
- Interfaces.BooleanInput u1
- "Boolean input signal"
+within Buildings.Controls.OBC.CDL.Continuous;
+block Switch
+ "Switch between two Real signals"
+ Interfaces.RealInput u1
+ "Real input signal"
annotation (Placement(transformation(extent={{-140,60},{-100,100}})));
Interfaces.BooleanInput u2
"Boolean switch input signal, if true, y=u1, else y=u3"
annotation (Placement(transformation(extent={{-140,-20},{-100,20}})));
- Interfaces.BooleanInput u3
- "Boolean input signal"
+ Interfaces.RealInput u3
+ "Real input signal"
annotation (Placement(transformation(extent={{-140,-100},{-100,-60}})));
- Interfaces.BooleanOutput y
- "Booelan output signal"
+ Interfaces.RealOutput y
+ "Real output signal"
annotation (Placement(transformation(extent={{100,-20},{140,20}})));
equation
@@ -21,11 +21,11 @@ equation
else
u3;
annotation (
- defaultComponentName="logSwi",
+ defaultComponentName="swi",
Documentation(
info="
-Block that outputs one of two boolean input signals based on a boolean input signal.
+Block that outputs one of two real input signals based on a boolean input signal.
If the input signal u2
is true
,
@@ -60,33 +60,33 @@ Modelica Standard Library.
fillPattern=FillPattern.Solid,
borderPattern=BorderPattern.Raised),
Line(
- points={{12,0},{100,0}},
- color={255,0,255}),
+ points={{12.0,0.0},{100.0,0.0}},
+ color={0,0,127}),
Line(
- points={{-100,0},{-40,0}},
+ points={{-100.0,0.0},{-40.0,0.0}},
color={255,0,255}),
Line(
- points={{-100,-80},{-40,-80},{-40,-80}},
- color={255,0,255}),
+ points={{-100.0,-80.0},{-40.0,-80.0},{-40.0,-80.0}},
+ color={0,0,127}),
Line(
- points={{-40,12},{-40,-10}},
+ points={{-40.0,12.0},{-40.0,-12.0}},
color={255,0,255}),
Line(
- points={{-100,80},{-40,80}},
- color={255,0,255}),
+ points={{-100.0,80.0},{-40.0,80.0}},
+ color={0,0,127}),
Line(
- points=DynamicSelect({{8,2},{-40,80}},{{8,2},
+ points=DynamicSelect({{10,0},{-40,80}},{{10,0},
if u2 then
{-40,80}
else
{-40,-80}}),
- color={255,0,255},
- thickness=1),
+ color={0,0,127},
+ thickness=1.0),
Ellipse(
- lineColor={0,0,127},
+ lineColor={0,0,255},
pattern=LinePattern.None,
fillPattern=FillPattern.Solid,
- extent={{2.0,-6.0},{18.0,8.0}}),
+ extent={{2.0,-8.0},{18.0,8.0}}),
Ellipse(
extent={{-71,7},{-85,-7}},
lineColor=DynamicSelect({235,235,235},
@@ -100,47 +100,8 @@ Modelica Standard Library.
else
{235,235,235}),
fillPattern=FillPattern.Solid),
- Ellipse(
- extent={{-71,74},{-85,88}},
- lineColor=DynamicSelect({235,235,235},
- if u1 then
- {0,255,0}
- else
- {235,235,235}),
- fillColor=DynamicSelect({235,235,235},
- if u1 then
- {0,255,0}
- else
- {235,235,235}),
- fillPattern=FillPattern.Solid),
- Ellipse(
- extent={{-71,-74},{-85,-88}},
- lineColor=DynamicSelect({235,235,235},
- if u3 then
- {0,255,0}
- else
- {235,235,235}),
- fillColor=DynamicSelect({235,235,235},
- if u3 then
- {0,255,0}
- else
- {235,235,235}),
- fillPattern=FillPattern.Solid),
- Ellipse(
- extent={{71,7},{85,-7}},
- lineColor=DynamicSelect({235,235,235},
- if y then
- {0,255,0}
- else
- {235,235,235}),
- fillColor=DynamicSelect({235,235,235},
- if y then
- {0,255,0}
- else
- {235,235,235}),
- fillPattern=FillPattern.Solid),
Text(
- extent={{-90,76},{-46,50}},
+ extent={{-90,80},{-46,54}},
lineColor=DynamicSelect({0,0,0},
if u2 then
{0,0,0}
@@ -148,7 +109,7 @@ Modelica Standard Library.
{235,235,235}),
textString="true"),
Text(
- extent={{-90,-42},{-38,-72}},
+ extent={{-90,-46},{-38,-76}},
lineColor=DynamicSelect({0,0,0},
if u2 then
{235,235,235}
@@ -159,4 +120,4 @@ Modelica Standard Library.
extent={{-150,150},{150,110}},
lineColor={0,0,255},
textString="%name")}));
-end LogicalSwitch;
+end Switch;
diff --git a/Buildings/Controls/OBC/CDL/Continuous/Validation/Switch.mo b/Buildings/Controls/OBC/CDL/Continuous/Validation/Switch.mo
new file mode 100644
index 00000000000..bfaa032c1d8
--- /dev/null
+++ b/Buildings/Controls/OBC/CDL/Continuous/Validation/Switch.mo
@@ -0,0 +1,66 @@
+within Buildings.Controls.OBC.CDL.Continuous.Validation;
+model Switch "Validation model for the Switch block"
+ Buildings.Controls.OBC.CDL.Continuous.Sources.Ramp ramp1(
+ duration=5,
+ offset=-1,
+ height=6)
+ "Block that generates ramp signal"
+ annotation (Placement(transformation(extent={{-26,22},{-6,42}})));
+ Buildings.Controls.OBC.CDL.Continuous.Sources.Ramp ramp2(
+ duration=5,
+ offset=-1,
+ height=2)
+ "Block that generates ramp signal"
+ annotation (Placement(transformation(extent={{-26,-42},{-6,-22}})));
+ Buildings.Controls.OBC.CDL.Logical.Sources.Pulse booPul(
+ width=0.5,
+ period=2)
+ "Block that outputs cyclic on and off"
+ annotation (Placement(transformation(extent={{-26,-10},{-6,10}})));
+ Buildings.Controls.OBC.CDL.Continuous.Switch switch1
+ "Switch between two real inputs"
+ annotation (Placement(transformation(extent={{26,-10},{46,10}})));
+
+equation
+ connect(booPul.y,switch1.u2)
+ annotation (Line(points={{-4,0},{-4,0},{24,0}},color={255,0,255}));
+ connect(ramp2.y,switch1.u3)
+ annotation (Line(points={{-4,-32},{8,-32},{8,-8},{24,-8}},color={0,0,127}));
+ connect(ramp1.y,switch1.u1)
+ annotation (Line(points={{-4,32},{8,32},{8,8},{24,8}},color={0,0,127}));
+ annotation (
+ experiment(
+ StopTime=5.0,
+ Tolerance=1e-06),
+ __Dymola_Commands(
+ file="modelica://Buildings/Resources/Scripts/Dymola/Controls/OBC/CDL/Continuous/Validation/Switch.mos" "Simulate and plot"),
+ Documentation(
+ info="
+
+Validation test for the block
+
+Buildings.Controls.OBC.CDL.Continuous.Switch.
+
+",
+ revisions="
+
+-
+April 2, 2017, by Jianjun Hu:
+First implementation.
+
+
+"),
+ Icon(
+ graphics={
+ Ellipse(
+ lineColor={75,138,73},
+ fillColor={255,255,255},
+ fillPattern=FillPattern.Solid,
+ extent={{-100,-100},{100,100}}),
+ Polygon(
+ lineColor={0,0,255},
+ fillColor={75,138,73},
+ pattern=LinePattern.None,
+ fillPattern=FillPattern.Solid,
+ points={{-36,60},{64,0},{-36,-60},{-36,60}})}));
+end Switch;
diff --git a/Buildings/Controls/OBC/CDL/Continuous/Validation/package.mo b/Buildings/Controls/OBC/CDL/Continuous/Validation/package.mo
index 41207206335..e1c64175451 100644
--- a/Buildings/Controls/OBC/CDL/Continuous/Validation/package.mo
+++ b/Buildings/Controls/OBC/CDL/Continuous/Validation/package.mo
@@ -1,6 +1,5 @@
within Buildings.Controls.OBC.CDL.Continuous;
-package Validation
- "Collection of models that validate the continuous blocks of the CDL"
+package Validation "Collection of models that validate the continuous blocks of the CDL"
annotation (
preferredView="info",
Documentation(
diff --git a/Buildings/Controls/OBC/CDL/Continuous/Validation/package.order b/Buildings/Controls/OBC/CDL/Continuous/Validation/package.order
index 3b1ba466789..4d1707750eb 100644
--- a/Buildings/Controls/OBC/CDL/Continuous/Validation/package.order
+++ b/Buildings/Controls/OBC/CDL/Continuous/Validation/package.order
@@ -42,4 +42,5 @@ Sin
SlewRateLimiter
Sort
Sqrt
+Switch
Tan
diff --git a/Buildings/Controls/OBC/CDL/Continuous/package.order b/Buildings/Controls/OBC/CDL/Continuous/package.order
index d1a4d630e22..305500e5bc7 100644
--- a/Buildings/Controls/OBC/CDL/Continuous/package.order
+++ b/Buildings/Controls/OBC/CDL/Continuous/package.order
@@ -37,6 +37,7 @@ Sin
SlewRateLimiter
Sort
Sqrt
+Switch
Tan
Sources
Validation
diff --git a/Buildings/Controls/OBC/CDL/Logical/IntegerSwitch.mo b/Buildings/Controls/OBC/CDL/Integers/Switch.mo
similarity index 97%
rename from Buildings/Controls/OBC/CDL/Logical/IntegerSwitch.mo
rename to Buildings/Controls/OBC/CDL/Integers/Switch.mo
index 741b23bae48..0a1ae1a1612 100644
--- a/Buildings/Controls/OBC/CDL/Logical/IntegerSwitch.mo
+++ b/Buildings/Controls/OBC/CDL/Integers/Switch.mo
@@ -1,5 +1,5 @@
-within Buildings.Controls.OBC.CDL.Logical;
-block IntegerSwitch
+within Buildings.Controls.OBC.CDL.Integers;
+block Switch
"Switch between two integer signals"
Interfaces.IntegerInput u1
"Integer input signal"
@@ -119,4 +119,4 @@ First implementation.
extent={{-150,150},{150,110}},
lineColor={0,0,255},
textString="%name")}));
-end IntegerSwitch;
+end Switch;
diff --git a/Buildings/Controls/OBC/CDL/Logical/Validation/IntegerSwitch.mo b/Buildings/Controls/OBC/CDL/Integers/Validation/Switch.mo
similarity index 75%
rename from Buildings/Controls/OBC/CDL/Logical/Validation/IntegerSwitch.mo
rename to Buildings/Controls/OBC/CDL/Integers/Validation/Switch.mo
index 169879b3d04..1e2b424f0df 100644
--- a/Buildings/Controls/OBC/CDL/Logical/Validation/IntegerSwitch.mo
+++ b/Buildings/Controls/OBC/CDL/Integers/Validation/Switch.mo
@@ -1,7 +1,6 @@
-within Buildings.Controls.OBC.CDL.Logical.Validation;
-model IntegerSwitch
- "Validation model for the IntegerSwitch block"
- Buildings.Controls.OBC.CDL.Logical.IntegerSwitch integerSwitch
+within Buildings.Controls.OBC.CDL.Integers.Validation;
+model Switch "Validation model for the Switch block"
+ Buildings.Controls.OBC.CDL.Integers.Switch integerSwitch
"Integer switch"
annotation (Placement(transformation(extent={{60,-10},{80,10}})));
Buildings.Controls.OBC.CDL.Logical.Sources.Pulse booPul1(
@@ -44,35 +43,35 @@ protected
equation
connect(booPul2.y,integerSwitch.u2)
- annotation (Line(points={{-5,0},{58,0}},color={255,0,255}));
+ annotation (Line(points={{-4,0},{58,0}},color={255,0,255}));
connect(booPul1.y,booToInt.u)
- annotation (Line(points={{-59,30},{-42,30}},color={255,0,255}));
+ annotation (Line(points={{-58,30},{-42,30}},color={255,0,255}));
connect(booPul3.y,booToInt1.u)
- annotation (Line(points={{-59,-70},{-42,-70}},color={255,0,255}));
+ annotation (Line(points={{-58,-70},{-42,-70}},color={255,0,255}));
connect(conInt.y,proInt.u1)
- annotation (Line(points={{-59,70},{-20,70},{-20,56},{-2,56}},color={255,127,0}));
+ annotation (Line(points={{-58,70},{-20,70},{-20,56},{-2,56}},color={255,127,0}));
connect(booToInt.y,proInt.u2)
- annotation (Line(points={{-19,30},{-10,30},{-10,44},{-2,44}},color={255,127,0}));
+ annotation (Line(points={{-18,30},{-10,30},{-10,44},{-2,44}},color={255,127,0}));
connect(conInt1.y,proInt1.u1)
- annotation (Line(points={{-59,-30},{-10,-30},{-10,-44},{-2,-44}},color={255,127,0}));
+ annotation (Line(points={{-58,-30},{-10,-30},{-10,-44},{-2,-44}},color={255,127,0}));
connect(booToInt1.y,proInt1.u2)
- annotation (Line(points={{-19,-70},{-10,-70},{-10,-56},{-2,-56}},color={255,127,0}));
+ annotation (Line(points={{-18,-70},{-10,-70},{-10,-56},{-2,-56}},color={255,127,0}));
connect(proInt.y,integerSwitch.u1)
- annotation (Line(points={{21,50},{40,50},{40,8},{58,8}},color={255,127,0}));
+ annotation (Line(points={{22,50},{40,50},{40,8},{58,8}},color={255,127,0}));
connect(proInt1.y,integerSwitch.u3)
- annotation (Line(points={{21,-50},{40,-50},{40,-8},{58,-8}},color={255,127,0}));
+ annotation (Line(points={{22,-50},{40,-50},{40,-8},{58,-8}},color={255,127,0}));
annotation (
experiment(
StopTime=5.0,
Tolerance=1e-06),
__Dymola_Commands(
- file="modelica://Buildings/Resources/Scripts/Dymola/Controls/OBC/CDL/Logical/Validation/IntegerSwitch.mos" "Simulate and plot"),
+ file="modelica://Buildings/Resources/Scripts/Dymola/Controls/OBC/CDL/Integers/Validation/Switch.mos" "Simulate and plot"),
Documentation(
info="
Validation test for the block
-
-Buildings.Controls.OBC.CDL.Logical.IntegerSwitch.
+
+Buildings.Controls.OBC.CDL.Integers.Switch.
The input u2
is the switch input: If u2 = true
,
@@ -102,4 +101,4 @@ First implementation.
pattern=LinePattern.None,
fillPattern=FillPattern.Solid,
points={{-36,60},{64,0},{-36,-60},{-36,60}})}));
-end IntegerSwitch;
+end Switch;
diff --git a/Buildings/Controls/OBC/CDL/Integers/Validation/package.mo b/Buildings/Controls/OBC/CDL/Integers/Validation/package.mo
index 2143735fe84..3f91b2094e2 100644
--- a/Buildings/Controls/OBC/CDL/Integers/Validation/package.mo
+++ b/Buildings/Controls/OBC/CDL/Integers/Validation/package.mo
@@ -1,6 +1,5 @@
within Buildings.Controls.OBC.CDL.Integers;
-package Validation
- "Collection of models that validate the integer blocks of the CDL"
+package Validation "Collection of models that validate the integer blocks of the CDL"
annotation (
preferredView="info",
Documentation(
diff --git a/Buildings/Controls/OBC/CDL/Integers/Validation/package.order b/Buildings/Controls/OBC/CDL/Integers/Validation/package.order
index 7b07a382abf..a9001555138 100644
--- a/Buildings/Controls/OBC/CDL/Integers/Validation/package.order
+++ b/Buildings/Controls/OBC/CDL/Integers/Validation/package.order
@@ -15,3 +15,4 @@ Min
MultiSum
OnCounter
Product
+Switch
diff --git a/Buildings/Controls/OBC/CDL/Integers/package.order b/Buildings/Controls/OBC/CDL/Integers/package.order
index a8133fc19c3..f422ad41a41 100644
--- a/Buildings/Controls/OBC/CDL/Integers/package.order
+++ b/Buildings/Controls/OBC/CDL/Integers/package.order
@@ -15,5 +15,6 @@ Min
MultiSum
OnCounter
Product
+Switch
Sources
Validation
diff --git a/Buildings/Controls/OBC/CDL/Logical/Switch.mo b/Buildings/Controls/OBC/CDL/Logical/Switch.mo
index 90bc98e874c..d0fcbf2221c 100644
--- a/Buildings/Controls/OBC/CDL/Logical/Switch.mo
+++ b/Buildings/Controls/OBC/CDL/Logical/Switch.mo
@@ -1,17 +1,17 @@
within Buildings.Controls.OBC.CDL.Logical;
block Switch
- "Switch between two Real signals"
- Interfaces.RealInput u1
- "Real input signal"
+ "Switch between two boolean signals"
+ Interfaces.BooleanInput u1
+ "Boolean input signal"
annotation (Placement(transformation(extent={{-140,60},{-100,100}})));
Interfaces.BooleanInput u2
"Boolean switch input signal, if true, y=u1, else y=u3"
annotation (Placement(transformation(extent={{-140,-20},{-100,20}})));
- Interfaces.RealInput u3
- "Real input signal"
+ Interfaces.BooleanInput u3
+ "Boolean input signal"
annotation (Placement(transformation(extent={{-140,-100},{-100,-60}})));
- Interfaces.RealOutput y
- "Real output signal"
+ Interfaces.BooleanOutput y
+ "Booelan output signal"
annotation (Placement(transformation(extent={{100,-20},{140,20}})));
equation
@@ -21,11 +21,11 @@ equation
else
u3;
annotation (
- defaultComponentName="swi",
+ defaultComponentName="logSwi",
Documentation(
info="
-Block that outputs one of two real input signals based on a boolean input signal.
+Block that outputs one of two boolean input signals based on a boolean input signal.
If the input signal u2
is true
,
@@ -60,33 +60,33 @@ Modelica Standard Library.
fillPattern=FillPattern.Solid,
borderPattern=BorderPattern.Raised),
Line(
- points={{12.0,0.0},{100.0,0.0}},
- color={0,0,127}),
+ points={{12,0},{100,0}},
+ color={255,0,255}),
Line(
- points={{-100.0,0.0},{-40.0,0.0}},
+ points={{-100,0},{-40,0}},
color={255,0,255}),
Line(
- points={{-100.0,-80.0},{-40.0,-80.0},{-40.0,-80.0}},
- color={0,0,127}),
+ points={{-100,-80},{-40,-80},{-40,-80}},
+ color={255,0,255}),
Line(
- points={{-40.0,12.0},{-40.0,-12.0}},
+ points={{-40,12},{-40,-10}},
color={255,0,255}),
Line(
- points={{-100.0,80.0},{-40.0,80.0}},
- color={0,0,127}),
+ points={{-100,80},{-40,80}},
+ color={255,0,255}),
Line(
- points=DynamicSelect({{10,0},{-40,80}},{{10,0},
+ points=DynamicSelect({{8,2},{-40,80}},{{8,2},
if u2 then
{-40,80}
else
{-40,-80}}),
- color={0,0,127},
- thickness=1.0),
+ color={255,0,255},
+ thickness=1),
Ellipse(
- lineColor={0,0,255},
+ lineColor={0,0,127},
pattern=LinePattern.None,
fillPattern=FillPattern.Solid,
- extent={{2.0,-8.0},{18.0,8.0}}),
+ extent={{2.0,-6.0},{18.0,8.0}}),
Ellipse(
extent={{-71,7},{-85,-7}},
lineColor=DynamicSelect({235,235,235},
@@ -100,8 +100,47 @@ Modelica Standard Library.
else
{235,235,235}),
fillPattern=FillPattern.Solid),
+ Ellipse(
+ extent={{-71,74},{-85,88}},
+ lineColor=DynamicSelect({235,235,235},
+ if u1 then
+ {0,255,0}
+ else
+ {235,235,235}),
+ fillColor=DynamicSelect({235,235,235},
+ if u1 then
+ {0,255,0}
+ else
+ {235,235,235}),
+ fillPattern=FillPattern.Solid),
+ Ellipse(
+ extent={{-71,-74},{-85,-88}},
+ lineColor=DynamicSelect({235,235,235},
+ if u3 then
+ {0,255,0}
+ else
+ {235,235,235}),
+ fillColor=DynamicSelect({235,235,235},
+ if u3 then
+ {0,255,0}
+ else
+ {235,235,235}),
+ fillPattern=FillPattern.Solid),
+ Ellipse(
+ extent={{71,7},{85,-7}},
+ lineColor=DynamicSelect({235,235,235},
+ if y then
+ {0,255,0}
+ else
+ {235,235,235}),
+ fillColor=DynamicSelect({235,235,235},
+ if y then
+ {0,255,0}
+ else
+ {235,235,235}),
+ fillPattern=FillPattern.Solid),
Text(
- extent={{-90,80},{-46,54}},
+ extent={{-90,76},{-46,50}},
lineColor=DynamicSelect({0,0,0},
if u2 then
{0,0,0}
@@ -109,7 +148,7 @@ Modelica Standard Library.
{235,235,235}),
textString="true"),
Text(
- extent={{-90,-46},{-38,-76}},
+ extent={{-90,-42},{-38,-72}},
lineColor=DynamicSelect({0,0,0},
if u2 then
{235,235,235}
diff --git a/Buildings/Controls/OBC/CDL/Logical/Validation/LogicalSwitch.mo b/Buildings/Controls/OBC/CDL/Logical/Validation/LogicalSwitch.mo
deleted file mode 100644
index 57f04c0bd7c..00000000000
--- a/Buildings/Controls/OBC/CDL/Logical/Validation/LogicalSwitch.mo
+++ /dev/null
@@ -1,71 +0,0 @@
-within Buildings.Controls.OBC.CDL.Logical.Validation;
-model LogicalSwitch
- "Validation model for the LogicalSwitch block"
- Buildings.Controls.OBC.CDL.Logical.Sources.Pulse booPul1(
- width=0.7,
- period=1.5)
- "Block that outputs cyclic on and off"
- annotation (Placement(transformation(extent={{-26,24},{-6,44}})));
- Buildings.Controls.OBC.CDL.Logical.Sources.Pulse booPul2(
- width=0.5,
- period=3)
- "Block that outputs cyclic on and off: switch between u1 and u3"
- annotation (Placement(transformation(extent={{-26,-10},{-6,10}})));
- Buildings.Controls.OBC.CDL.Logical.Sources.Pulse booPul3(
- width=0.5,
- period=5)
- "Block that outputs cyclic on and off"
- annotation (Placement(transformation(extent={{-26,-46},{-6,-26}})));
- Buildings.Controls.OBC.CDL.Logical.LogicalSwitch logicalSwitch
- "Switch between two boolean inputs"
- annotation (Placement(transformation(extent={{26,-10},{46,10}})));
-
-equation
- connect(booPul2.y,logicalSwitch.u2)
- annotation (Line(points={{-4,0},{-4,0},{24,0}},color={255,0,255}));
- connect(booPul1.y,logicalSwitch.u1)
- annotation (Line(points={{-4,34},{10,34},{10,8},{24,8}},color={255,0,255}));
- connect(booPul3.y,logicalSwitch.u3)
- annotation (Line(points={{-4,-36},{10,-36},{10,-8},{24,-8}},color={255,0,255}));
- annotation (
- experiment(
- StopTime=5.0,
- Tolerance=1e-06),
- __Dymola_Commands(
- file="modelica://Buildings/Resources/Scripts/Dymola/Controls/OBC/CDL/Logical/Validation/LogicalSwitch.mos" "Simulate and plot"),
- Documentation(
- info="
-
-Validation test for the block
-
-Buildings.Controls.OBC.CDL.Logical.LogicalSwitch.
-
-
-The input u2
is the switch input: If u2 = true
,
-then output y = u1
;
-else output y = u3
.
-
-
-",
- revisions="
-
--
-April 2, 2017, by Jianjun Hu:
-First implementation.
-
-
-"),
- Icon(
- graphics={
- Ellipse(
- lineColor={75,138,73},
- fillColor={255,255,255},
- fillPattern=FillPattern.Solid,
- extent={{-100,-100},{100,100}}),
- Polygon(
- lineColor={0,0,255},
- fillColor={75,138,73},
- pattern=LinePattern.None,
- fillPattern=FillPattern.Solid,
- points={{-36,60},{64,0},{-36,-60},{-36,60}})}));
-end LogicalSwitch;
diff --git a/Buildings/Controls/OBC/CDL/Logical/Validation/Switch.mo b/Buildings/Controls/OBC/CDL/Logical/Validation/Switch.mo
index 93bc68a9dcc..1d7cbd5910b 100644
--- a/Buildings/Controls/OBC/CDL/Logical/Validation/Switch.mo
+++ b/Buildings/Controls/OBC/CDL/Logical/Validation/Switch.mo
@@ -1,34 +1,31 @@
within Buildings.Controls.OBC.CDL.Logical.Validation;
-model Switch
- "Validation model for the Switch block"
- Buildings.Controls.OBC.CDL.Continuous.Sources.Ramp ramp1(
- duration=5,
- offset=-1,
- height=6)
- "Block that generates ramp signal"
- annotation (Placement(transformation(extent={{-26,22},{-6,42}})));
- Buildings.Controls.OBC.CDL.Continuous.Sources.Ramp ramp2(
- duration=5,
- offset=-1,
- height=2)
- "Block that generates ramp signal"
- annotation (Placement(transformation(extent={{-26,-42},{-6,-22}})));
- Buildings.Controls.OBC.CDL.Logical.Sources.Pulse booPul(
- width=0.5,
- period=2)
+model Switch "Validation model for the Switch block"
+ Buildings.Controls.OBC.CDL.Logical.Sources.Pulse booPul1(
+ width=0.7,
+ period=1.5)
"Block that outputs cyclic on and off"
+ annotation (Placement(transformation(extent={{-26,24},{-6,44}})));
+ Buildings.Controls.OBC.CDL.Logical.Sources.Pulse booPul2(
+ width=0.5,
+ period=3)
+ "Block that outputs cyclic on and off: switch between u1 and u3"
annotation (Placement(transformation(extent={{-26,-10},{-6,10}})));
- Buildings.Controls.OBC.CDL.Logical.Switch switch1
- "Switch between two real inputs"
+ Buildings.Controls.OBC.CDL.Logical.Sources.Pulse booPul3(
+ width=0.5,
+ period=5)
+ "Block that outputs cyclic on and off"
+ annotation (Placement(transformation(extent={{-26,-46},{-6,-26}})));
+ Buildings.Controls.OBC.CDL.Logical.Switch logicalSwitch
+ "Switch between two boolean inputs"
annotation (Placement(transformation(extent={{26,-10},{46,10}})));
equation
- connect(booPul.y,switch1.u2)
+ connect(booPul2.y,logicalSwitch.u2)
annotation (Line(points={{-4,0},{-4,0},{24,0}},color={255,0,255}));
- connect(ramp2.y,switch1.u3)
- annotation (Line(points={{-4,-32},{8,-32},{8,-8},{24,-8}},color={0,0,127}));
- connect(ramp1.y,switch1.u1)
- annotation (Line(points={{-4,32},{8,32},{8,8},{24,8}},color={0,0,127}));
+ connect(booPul1.y,logicalSwitch.u1)
+ annotation (Line(points={{-4,34},{10,34},{10,8},{24,8}},color={255,0,255}));
+ connect(booPul3.y,logicalSwitch.u3)
+ annotation (Line(points={{-4,-36},{10,-36},{10,-8},{24,-8}},color={255,0,255}));
annotation (
experiment(
StopTime=5.0,
@@ -42,6 +39,12 @@ Validation test for the block
Buildings.Controls.OBC.CDL.Logical.Switch.
+
+The input u2
is the switch input: If u2 = true
,
+then output y = u1
;
+else output y = u3
.
+
+
",
revisions="
diff --git a/Buildings/Controls/OBC/CDL/Logical/Validation/package.mo b/Buildings/Controls/OBC/CDL/Logical/Validation/package.mo
index 70a9799100b..c6292743c73 100644
--- a/Buildings/Controls/OBC/CDL/Logical/Validation/package.mo
+++ b/Buildings/Controls/OBC/CDL/Logical/Validation/package.mo
@@ -1,6 +1,5 @@
within Buildings.Controls.OBC.CDL.Logical;
-package Validation
- "Collection of models that validate the logical blocks of the CDL"
+package Validation "Collection of models that validate the logical blocks of the CDL"
annotation (
preferredView="info",
Documentation(
diff --git a/Buildings/Controls/OBC/CDL/Logical/Validation/package.order b/Buildings/Controls/OBC/CDL/Logical/Validation/package.order
index 110d4ef4031..6977d9a8c94 100644
--- a/Buildings/Controls/OBC/CDL/Logical/Validation/package.order
+++ b/Buildings/Controls/OBC/CDL/Logical/Validation/package.order
@@ -3,9 +3,7 @@ And3
Change
Edge
FallingEdge
-IntegerSwitch
Latch
-LogicalSwitch
MultiAnd
MultiOr
Nand
diff --git a/Buildings/Controls/OBC/CDL/Logical/package.order b/Buildings/Controls/OBC/CDL/Logical/package.order
index 610c579a68b..e15d157adaf 100644
--- a/Buildings/Controls/OBC/CDL/Logical/package.order
+++ b/Buildings/Controls/OBC/CDL/Logical/package.order
@@ -3,9 +3,7 @@ And3
Change
Edge
FallingEdge
-IntegerSwitch
Latch
-LogicalSwitch
MultiAnd
MultiOr
Nand
diff --git a/Buildings/Controls/OBC/Utilities/BaseClasses/OptimalStartCalculation.mo b/Buildings/Controls/OBC/Utilities/BaseClasses/OptimalStartCalculation.mo
index ce6382ba844..71baa154a19 100644
--- a/Buildings/Controls/OBC/Utilities/BaseClasses/OptimalStartCalculation.mo
+++ b/Buildings/Controls/OBC/Utilities/BaseClasses/OptimalStartCalculation.mo
@@ -160,7 +160,7 @@ protected
CDL.Continuous.Max temSloAve
"Temperature slope during heat up or cool down over the past sampled days"
annotation (Placement(transformation(extent={{120,-16},{140,4}})));
- CDL.Logical.Switch dTUse
+ CDL.Continuous.Switch dTUse
"dT used in the calculations (to avoid negative dT)"
annotation (Placement(transformation(extent={{80,70},{100,90}})));
CDL.Continuous.GreaterThreshold reqStaUp(
diff --git a/Buildings/Examples/DualFanDualDuct/Controls/RoomMixingBox.mo b/Buildings/Examples/DualFanDualDuct/Controls/RoomMixingBox.mo
index f42d11b7035..1c6ebbccf9c 100644
--- a/Buildings/Examples/DualFanDualDuct/Controls/RoomMixingBox.mo
+++ b/Buildings/Examples/DualFanDualDuct/Controls/RoomMixingBox.mo
@@ -71,9 +71,9 @@ block RoomMixingBox "Controller for room mixing box"
Buildings.Controls.OBC.CDL.Continuous.Division gaiCooUnl
"Gain of cooling, unlimited"
annotation (Placement(transformation(extent={{-28,-80},{-8,-60}})));
- Buildings.Controls.OBC.CDL.Logical.Switch swiHot "Switch for heating"
+ Buildings.Controls.OBC.CDL.Continuous.Switch swiHot "Switch for heating"
annotation (Placement(transformation(extent={{74,30},{94,50}})));
- Buildings.Controls.OBC.CDL.Logical.Switch swiCoo "Switch for cooling"
+ Buildings.Controls.OBC.CDL.Continuous.Switch swiCoo "Switch for cooling"
annotation (Placement(transformation(extent={{72,-60},{92,-40}})));
Buildings.Controls.OBC.CDL.Interfaces.BooleanInput yFan
"Fan operation, true if fan is running" annotation (Placement(
diff --git a/Buildings/Examples/HydronicHeating/TwoRoomsWithStorage.mo b/Buildings/Examples/HydronicHeating/TwoRoomsWithStorage.mo
index 2c9c9c49752..851320538d8 100644
--- a/Buildings/Examples/HydronicHeating/TwoRoomsWithStorage.mo
+++ b/Buildings/Examples/HydronicHeating/TwoRoomsWithStorage.mo
@@ -288,7 +288,7 @@ model TwoRoomsWithStorage
Controls.SetPoints.OccupancySchedule occSch1(occupancy=3600*{7,8,10,11,11.5,
15,19,21}) "Occupancy schedule"
annotation (Placement(transformation(extent={{300,556},{320,576}})));
- Buildings.Controls.OBC.CDL.Logical.Switch switch1
+ Buildings.Controls.OBC.CDL.Continuous.Switch switch1
annotation (Placement(transformation(extent={{340,550},{360,570}})));
Buildings.Controls.OBC.CDL.Continuous.Sources.Constant zer(k=0) "Outputs zero"
annotation (Placement(transformation(extent={{260,540},{280,560}})));
@@ -296,11 +296,11 @@ model TwoRoomsWithStorage
firstEntryOccupied=false, occupancy=3600*{7,10,12,22})
"Occupancy schedule"
annotation (Placement(transformation(extent={{300,276},{320,296}})));
- Buildings.Controls.OBC.CDL.Logical.Switch switch2
+ Buildings.Controls.OBC.CDL.Continuous.Switch switch2
annotation (Placement(transformation(extent={{340,270},{360,290}})));
Controls.SetPoints.OccupancySchedule occSch "Occupancy schedule"
annotation (Placement(transformation(extent={{480,358},{500,378}})));
- Buildings.Controls.OBC.CDL.Logical.Switch swi "Switch to select set point"
+ Buildings.Controls.OBC.CDL.Continuous.Switch swi "Switch to select set point"
annotation (Placement(transformation(extent={{640,370},{660,390}})));
Buildings.Controls.OBC.CDL.Continuous.Sources.Constant TRooNig(k=273.15 + 16)
"Room temperature set point at night"
@@ -393,7 +393,7 @@ model TwoRoomsWithStorage
Buildings.Controls.OBC.CDL.Continuous.Sources.Constant TRooOff(k=273.15 - 5)
"Low room temperature set point to switch heating off"
annotation (Placement(transformation(extent={{600,300},{620,320}})));
- Buildings.Controls.OBC.CDL.Logical.Switch swi1 "Switch to select set point"
+ Buildings.Controls.OBC.CDL.Continuous.Switch swi1 "Switch to select set point"
annotation (Placement(transformation(extent={{540,380},{560,400}})));
Modelica.Blocks.Logical.OnOffController onOff(bandwidth=2) "On/off switch"
annotation (Placement(transformation(extent={{580,334},{600,354}})));
diff --git a/Buildings/Examples/VAVReheat/ASHRAE2006.mo b/Buildings/Examples/VAVReheat/ASHRAE2006.mo
index fe1f0bc5220..f7c81084be2 100644
--- a/Buildings/Examples/VAVReheat/ASHRAE2006.mo
+++ b/Buildings/Examples/VAVReheat/ASHRAE2006.mo
@@ -92,10 +92,10 @@ model ASHRAE2006
Controls.SystemHysteresis sysHysCoo
"Hysteresis and delay to switch cooling on and off"
annotation (Placement(transformation(extent={{40,-250},{60,-230}})));
- Buildings.Controls.OBC.CDL.Logical.Switch swiFreStaPum
+ Buildings.Controls.OBC.CDL.Continuous.Switch swiFreStaPum
"Switch for freeze stat of pump"
annotation (Placement(transformation(extent={{40,-130},{60,-110}})));
- Buildings.Controls.OBC.CDL.Logical.Switch swiFreStaVal
+ Buildings.Controls.OBC.CDL.Continuous.Switch swiFreStaVal
"Switch for freeze stat of valve"
annotation (Placement(transformation(extent={{40,-170},{60,-150}})));
Buildings.Controls.OBC.CDL.Continuous.Sources.Constant yFreHeaCoi(final k=1)
diff --git a/Buildings/Examples/VAVReheat/Controls/Economizer.mo b/Buildings/Examples/VAVReheat/Controls/Economizer.mo
index ac724a73401..07f69d82441 100644
--- a/Buildings/Examples/VAVReheat/Controls/Economizer.mo
+++ b/Buildings/Examples/VAVReheat/Controls/Economizer.mo
@@ -89,13 +89,13 @@ block Economizer "Controller for economizer"
annotation (Placement(transformation(extent={{-30,110},{-10,130}})));
Modelica.Blocks.Math.Feedback feedback
annotation (Placement(transformation(extent={{-90,110},{-70,130}})));
- Buildings.Controls.OBC.CDL.Logical.Switch swiOA
+ Buildings.Controls.OBC.CDL.Continuous.Switch swiOA
"Switch to close outdoor air damper"
annotation (Placement(transformation(extent={{90,110},{110,130}})));
Modelica.Blocks.Sources.Constant one(k=1) if not have_frePro
"Fill value in case freeze protection is disabled"
annotation (Placement(transformation(extent={{-60,10},{-40,30}})));
- Buildings.Controls.OBC.CDL.Logical.Switch swiModClo
+ Buildings.Controls.OBC.CDL.Continuous.Switch swiModClo
"Switch between modulating or closing outdoor air damper"
annotation (Placement(transformation(extent={{130,-10},{150,10}})));
Buildings.Controls.OBC.CDL.Continuous.Max maxOutDam
diff --git a/Buildings/Examples/VAVReheat/Controls/FanVFD.mo b/Buildings/Examples/VAVReheat/Controls/FanVFD.mo
index 0c8033acf85..36393f52626 100644
--- a/Buildings/Examples/VAVReheat/Controls/FanVFD.mo
+++ b/Buildings/Examples/VAVReheat/Controls/FanVFD.mo
@@ -35,7 +35,7 @@ block FanVFD "Controller for fan revolution"
parameter Modelica.SIunits.Time Ti=15 "Time constant of integrator block"
annotation (Dialog(group="Setpoint tracking"));
- Buildings.Controls.OBC.CDL.Logical.Switch swi
+ Buildings.Controls.OBC.CDL.Continuous.Switch swi
annotation (Placement(transformation(extent={{40,-10},{60,10}})));
Buildings.Controls.OBC.CDL.Interfaces.BooleanInput uFan
"Set to true to enable the fan on"
diff --git a/Buildings/Examples/VAVReheat/Controls/RoomVAV.mo b/Buildings/Examples/VAVReheat/Controls/RoomVAV.mo
index d3a105ff21b..3598c1962cb 100644
--- a/Buildings/Examples/VAVReheat/Controls/RoomVAV.mo
+++ b/Buildings/Examples/VAVReheat/Controls/RoomVAV.mo
@@ -101,7 +101,7 @@ block RoomVAV "Controller for room VAV box"
Buildings.Controls.OBC.CDL.Continuous.Sources.Constant minFloHea(
final k=ratVFloHea) "Minimum air flow set point in heating mode"
annotation (Placement(transformation(extent={{-60,90},{-40,110}})));
- Buildings.Controls.OBC.CDL.Logical.Switch swi
+ Buildings.Controls.OBC.CDL.Continuous.Switch swi
"Switch between heating and deadband air flow rate"
annotation (Placement(transformation(extent={{-10,50},{10,70}})));
Buildings.Controls.OBC.CDL.Utilities.Assert assMes(message=
diff --git a/Buildings/Examples/VAVReheat/Controls/SupplyAirTemperature.mo b/Buildings/Examples/VAVReheat/Controls/SupplyAirTemperature.mo
index ddad8a4d74a..d9d8a9ab489 100644
--- a/Buildings/Examples/VAVReheat/Controls/SupplyAirTemperature.mo
+++ b/Buildings/Examples/VAVReheat/Controls/SupplyAirTemperature.mo
@@ -93,13 +93,13 @@ block SupplyAirTemperature
annotation (Placement(transformation(extent={{-100,50},{-80,70}})));
Buildings.Controls.OBC.CDL.Continuous.Sources.Constant one(k=1) "one"
annotation (Placement(transformation(extent={{-100,-70},{-80,-50}})));
- Buildings.Controls.OBC.CDL.Logical.Switch swiHea if have_heating
+ Buildings.Controls.OBC.CDL.Continuous.Switch swiHea if have_heating
"Switch to close heating coil valve"
annotation (Placement(transformation(extent={{70,70},{90,90}})));
- Buildings.Controls.OBC.CDL.Logical.Switch swiCoo
+ Buildings.Controls.OBC.CDL.Continuous.Switch swiCoo
"Switch to close cooling coil valve"
annotation (Placement(transformation(extent={{70,-90},{90,-70}})));
- Buildings.Controls.OBC.CDL.Logical.Switch swiOA
+ Buildings.Controls.OBC.CDL.Continuous.Switch swiOA
"Switch to close outdoor air damper"
annotation (Placement(transformation(extent={{70,-10},{90,10}})));
Buildings.Controls.OBC.CDL.Continuous.Sources.Constant limInfCoo(
diff --git a/Buildings/Examples/VAVReheat/Controls/SystemHysteresis.mo b/Buildings/Examples/VAVReheat/Controls/SystemHysteresis.mo
index 3b3e9c52450..1599cafa152 100644
--- a/Buildings/Examples/VAVReheat/Controls/SystemHysteresis.mo
+++ b/Buildings/Examples/VAVReheat/Controls/SystemHysteresis.mo
@@ -17,7 +17,7 @@ model SystemHysteresis
h=0.09)
"Threshold to switch on system"
annotation (Placement(transformation(extent={{-60,-10},{-40,10}})));
- Buildings.Controls.OBC.CDL.Logical.Switch swi "Switch for control signal"
+ Buildings.Controls.OBC.CDL.Continuous.Switch swi "Switch for control signal"
annotation (Placement(transformation(extent={{30,-2},{50,18}})));
Buildings.Controls.OBC.CDL.Continuous.Sources.Constant con(final k=0)
"Zero output signal"
@@ -34,10 +34,10 @@ model SystemHysteresis
Buildings.Controls.OBC.CDL.Interfaces.BooleanInput sysOn
"System on signal, set for example to true if fan is on"
annotation (Placement(transformation(extent={{-140,40},{-100,80}})));
- Buildings.Controls.OBC.CDL.Logical.Switch swiSysOff
+ Buildings.Controls.OBC.CDL.Continuous.Switch swiSysOff
"Switch to overide if system is off"
annotation (Placement(transformation(extent={{70,-10},{90,10}})));
- Buildings.Controls.OBC.CDL.Logical.Switch swiSysOff1
+ Buildings.Controls.OBC.CDL.Continuous.Switch swiSysOff1
"Switch to overide if system is off"
annotation (Placement(transformation(extent={{68,-80},{88,-60}})));
equation
diff --git a/Buildings/Examples/VAVReheat/Guideline36.mo b/Buildings/Examples/VAVReheat/Guideline36.mo
index 9ef29e02fbb..2947db60fb5 100644
--- a/Buildings/Examples/VAVReheat/Guideline36.mo
+++ b/Buildings/Examples/VAVReheat/Guideline36.mo
@@ -74,7 +74,7 @@ model Guideline36
Buildings.Controls.OBC.CDL.Integers.MultiSum PZonResReq(nin=5)
"Number of zone pressure requests"
annotation (Placement(transformation(extent={{300,320},{320,340}})));
- Buildings.Controls.OBC.CDL.Logical.Switch swiFreStaPum
+ Buildings.Controls.OBC.CDL.Continuous.Switch swiFreStaPum
"Switch for freeze stat of pump"
annotation (Placement(transformation(extent={{20,-120},{40,-100}})));
Buildings.Controls.OBC.CDL.Continuous.Sources.Constant yFreHeaCoi(final k=1)
@@ -148,7 +148,7 @@ model Guideline36
Controls.SystemHysteresis sysHysCoo
"Hysteresis and delay to switch cooling on and off"
annotation (Placement(transformation(extent={{20,-250},{40,-230}})));
- Buildings.Controls.OBC.CDL.Logical.Switch swiFreStaVal
+ Buildings.Controls.OBC.CDL.Continuous.Switch swiFreStaVal
"Switch for freeze stat of valve"
annotation (Placement(transformation(extent={{20,-160},{40,-140}})));
equation
diff --git a/Buildings/Experimental/DHC/CentralPlants/Cooling/Subsystems/CoolingTowersWithBypass.mo b/Buildings/Experimental/DHC/CentralPlants/Cooling/Subsystems/CoolingTowersWithBypass.mo
index d8404c4e698..3257c94af57 100644
--- a/Buildings/Experimental/DHC/CentralPlants/Cooling/Subsystems/CoolingTowersWithBypass.mo
+++ b/Buildings/Experimental/DHC/CentralPlants/Cooling/Subsystems/CoolingTowersWithBypass.mo
@@ -140,7 +140,7 @@ model CoolingTowersWithBypass
final Ti=Ti)
"Cooling tower fan speed controller"
annotation (Placement(transformation(extent={{-10,40},{10,60}})));
- Buildings.Controls.OBC.CDL.Logical.Switch swi
+ Buildings.Controls.OBC.CDL.Continuous.Switch swi
"Output the input of higher value"
annotation (Placement(transformation(extent={{-40,40},{-20,60}})));
Buildings.Controls.OBC.CDL.Continuous.Hysteresis hys(
diff --git a/Buildings/Experimental/DHC/CentralPlants/Cooling/Subsystems/Examples/BaseClasses/PartialCoolingTowersSubsystem.mo b/Buildings/Experimental/DHC/CentralPlants/Cooling/Subsystems/Examples/BaseClasses/PartialCoolingTowersSubsystem.mo
index 985cfdfc8f2..dac0f6e018c 100644
--- a/Buildings/Experimental/DHC/CentralPlants/Cooling/Subsystems/Examples/BaseClasses/PartialCoolingTowersSubsystem.mo
+++ b/Buildings/Experimental/DHC/CentralPlants/Cooling/Subsystems/Examples/BaseClasses/PartialCoolingTowersSubsystem.mo
@@ -41,7 +41,7 @@ partial model PartialCoolingTowersSubsystem
"On/off controller"
annotation (Placement(transformation(extent={{-20,-200},{0,-180}})));
- Buildings.Controls.OBC.CDL.Logical.Switch swi "Control switch for chilled water pump"
+ Buildings.Controls.OBC.CDL.Continuous.Switch swi "Control switch for chilled water pump"
annotation (Placement(transformation(extent={{20,-200},{40,-180}})));
Buildings.Controls.OBC.CDL.Continuous.Sources.Constant TSwi(k=273.15 + 22)
diff --git a/Buildings/Experimental/DHC/EnergyTransferStations/Combined/Generation5/Controls/Borefield.mo b/Buildings/Experimental/DHC/EnergyTransferStations/Combined/Generation5/Controls/Borefield.mo
index f07e5055087..a405dfb3c04 100644
--- a/Buildings/Experimental/DHC/EnergyTransferStations/Combined/Generation5/Controls/Borefield.mo
+++ b/Buildings/Experimental/DHC/EnergyTransferStations/Combined/Generation5/Controls/Borefield.mo
@@ -64,7 +64,7 @@ model Borefield
final h=0.025)
"Borefield enabled from supervisory"
annotation (Placement(transformation(extent={{-50,-30},{-30,-10}})));
- Buildings.Controls.OBC.CDL.Logical.Switch runBor
+ Buildings.Controls.OBC.CDL.Continuous.Switch runBor
"Enable borefield system pump"
annotation (Placement(transformation(extent={{70,50},{90,70}})));
Buildings.Controls.OBC.CDL.Continuous.Sources.Constant limVal(
diff --git a/Buildings/Experimental/DHC/EnergyTransferStations/Combined/Generation5/Controls/HeatExchanger.mo b/Buildings/Experimental/DHC/EnergyTransferStations/Combined/Generation5/Controls/HeatExchanger.mo
index 1477d11c175..9c9fca2ec0e 100644
--- a/Buildings/Experimental/DHC/EnergyTransferStations/Combined/Generation5/Controls/HeatExchanger.mo
+++ b/Buildings/Experimental/DHC/EnergyTransferStations/Combined/Generation5/Controls/HeatExchanger.mo
@@ -33,7 +33,7 @@ model HeatExchanger
Buildings.Controls.OBC.CDL.Continuous.Max max1
"Maximum between control signal and minimum speed or opening"
annotation (Placement(transformation(extent={{90,-70},{110,-50}})));
- Buildings.Controls.OBC.CDL.Logical.Switch swiOff1
+ Buildings.Controls.OBC.CDL.Continuous.Switch swiOff1
"Output zero if not enabled"
annotation (Placement(transformation(extent={{160,-70},{180,-50}})));
Buildings.Controls.OBC.CDL.Continuous.Sources.Constant min1(
@@ -68,7 +68,7 @@ model HeatExchanger
final k=spePum2Min)
"Minimum pump speed"
annotation (Placement(transformation(extent={{-10,70},{10,90}})));
- Buildings.Controls.OBC.CDL.Logical.Switch swiOff2
+ Buildings.Controls.OBC.CDL.Continuous.Switch swiOff2
"Output zero if not enabled"
annotation (Placement(transformation(extent={{160,50},{180,70}})));
Buildings.Controls.OBC.CDL.Continuous.Line mapSpe
diff --git a/Buildings/Experimental/DHC/EnergyTransferStations/Combined/Generation5/Controls/PIDWithEnable.mo b/Buildings/Experimental/DHC/EnergyTransferStations/Combined/Generation5/Controls/PIDWithEnable.mo
index 7773400a812..929ae8e28af 100644
--- a/Buildings/Experimental/DHC/EnergyTransferStations/Combined/Generation5/Controls/PIDWithEnable.mo
+++ b/Buildings/Experimental/DHC/EnergyTransferStations/Combined/Generation5/Controls/PIDWithEnable.mo
@@ -49,9 +49,9 @@ block PIDWithEnable
final reverseActing=reverseActing,
final y_reset=y_reset)
annotation (Placement(transformation(extent={{-10,-10},{10,10}})));
- Buildings.Controls.OBC.CDL.Logical.Switch swi
+ Buildings.Controls.OBC.CDL.Continuous.Switch swi
annotation (Placement(transformation(extent={{-40,-10},{-20,10}})));
- Buildings.Controls.OBC.CDL.Logical.Switch swi1
+ Buildings.Controls.OBC.CDL.Continuous.Switch swi1
annotation (Placement(transformation(extent={{72,-10},{92,10}})));
Buildings.Controls.OBC.CDL.Continuous.Sources.Constant valDis(
final k=0)
diff --git a/Buildings/Experimental/DHC/EnergyTransferStations/Combined/Generation5/Controls/Reset.mo b/Buildings/Experimental/DHC/EnergyTransferStations/Combined/Generation5/Controls/Reset.mo
index ac121791732..98eb857ed9e 100644
--- a/Buildings/Experimental/DHC/EnergyTransferStations/Combined/Generation5/Controls/Reset.mo
+++ b/Buildings/Experimental/DHC/EnergyTransferStations/Combined/Generation5/Controls/Reset.mo
@@ -25,7 +25,7 @@ model Reset
k=THeaWatSupSetMin)
"Minimum value of HW set point"
annotation (Placement(transformation(extent={{-60,-30},{-40,-10}})));
- Buildings.Controls.OBC.CDL.Logical.Switch swiHea
+ Buildings.Controls.OBC.CDL.Continuous.Switch swiHea
"Switch"
annotation (Placement(transformation(extent={{0,-10},{20,10}})));
Buildings.Controls.OBC.CDL.Continuous.SlewRateLimiter ramLimHea(
diff --git a/Buildings/Experimental/DHC/EnergyTransferStations/Combined/Generation5/Controls/WatersideEconomizer.mo b/Buildings/Experimental/DHC/EnergyTransferStations/Combined/Generation5/Controls/WatersideEconomizer.mo
index 1a73f56504a..068ec7bb0ff 100644
--- a/Buildings/Experimental/DHC/EnergyTransferStations/Combined/Generation5/Controls/WatersideEconomizer.mo
+++ b/Buildings/Experimental/DHC/EnergyTransferStations/Combined/Generation5/Controls/WatersideEconomizer.mo
@@ -90,7 +90,7 @@ model WatersideEconomizer
Buildings.Controls.OBC.CDL.Continuous.Line lin
"Linear variation bounded by minimum and 1"
annotation (Placement(transformation(extent={{60,90},{80,110}})));
- Buildings.Controls.OBC.CDL.Logical.Switch swiOff1
+ Buildings.Controls.OBC.CDL.Continuous.Switch swiOff1
"Output zero if cooling not enabled or isolation valve open (cold rejection)"
annotation (Placement(transformation(extent={{100,150},{120,170}})));
Buildings.Controls.OBC.CDL.Continuous.Sources.Constant zer(final k=0) "Zero"
@@ -136,7 +136,7 @@ model WatersideEconomizer
Buildings.Controls.OBC.CDL.Continuous.Gain nor2(k=1/m2_flow_nominal)
"Normalize"
annotation (Placement(transformation(extent={{-140,90},{-120,110}})));
- Buildings.Controls.OBC.CDL.Logical.Switch swiOff2
+ Buildings.Controls.OBC.CDL.Continuous.Switch swiOff2
"Switch between enabled and disabled mode"
annotation (Placement(transformation(extent={{140,90},{160,110}})));
Buildings.Controls.OBC.CDL.Continuous.Sources.Constant one(final k=1) "One"
diff --git a/Buildings/Experimental/DHC/EnergyTransferStations/Combined/Generation5/Subsystems/HeatPump.mo b/Buildings/Experimental/DHC/EnergyTransferStations/Combined/Generation5/Subsystems/HeatPump.mo
index 04fccff300e..c84287388a7 100644
--- a/Buildings/Experimental/DHC/EnergyTransferStations/Combined/Generation5/Subsystems/HeatPump.mo
+++ b/Buildings/Experimental/DHC/EnergyTransferStations/Combined/Generation5/Subsystems/HeatPump.mo
@@ -180,7 +180,7 @@ model HeatPump "Base subsystem with water-to-water heat pump"
extent={{-10,-10},{10,10}},
rotation=90,
origin={-40,-20})));
- Buildings.Controls.OBC.CDL.Logical.Switch enaHeaPum(
+ Buildings.Controls.OBC.CDL.Continuous.Switch enaHeaPum(
u2(start=false))
"Enable heat pump by switching to actual set point"
annotation (Placement(transformation(extent={{-140,10},{-120,30}})));
diff --git a/Buildings/Experimental/DHC/EnergyTransferStations/Combined/Generation5/Subsystems/Validation/HeatExchanger.mo b/Buildings/Experimental/DHC/EnergyTransferStations/Combined/Generation5/Subsystems/Validation/HeatExchanger.mo
index 5d3ce295260..317ac8d3366 100644
--- a/Buildings/Experimental/DHC/EnergyTransferStations/Combined/Generation5/Subsystems/Validation/HeatExchanger.mo
+++ b/Buildings/Experimental/DHC/EnergyTransferStations/Combined/Generation5/Subsystems/Validation/HeatExchanger.mo
@@ -41,7 +41,7 @@ model HeatExchanger
T_b2_nominal=279.15)
"Heat exchanger with primary pump"
annotation (Placement(transformation(extent={{30,-90},{50,-70}})));
- Buildings.Controls.OBC.CDL.Logical.Switch swi
+ Buildings.Controls.OBC.CDL.Continuous.Switch swi
"Switch secondary temperature value depending on heat/cold rejection mode"
annotation (Placement(transformation(extent={{-120,-90},{-100,-70}})));
Buildings.Fluid.Sensors.TemperatureTwoPort senT1OutPum(redeclare final
@@ -145,7 +145,7 @@ model HeatExchanger
offset=0.5)
"Control signal"
annotation (Placement(transformation(extent={{-80,130},{-60,150}})));
- Buildings.Controls.OBC.CDL.Logical.Switch swi1 "Activate heat/cold rejection"
+ Buildings.Controls.OBC.CDL.Continuous.Switch swi1 "Activate heat/cold rejection"
annotation (Placement(transformation(extent={{-20,70},{0,90}})));
Buildings.Controls.OBC.CDL.Continuous.Sources.Constant zer(
k=0) "Zero"
diff --git a/Buildings/Experimental/DHC/Loads/Controls/MixingValveControl.mo b/Buildings/Experimental/DHC/Loads/Controls/MixingValveControl.mo
index 4886c74fab6..f509f063cc5 100644
--- a/Buildings/Experimental/DHC/Loads/Controls/MixingValveControl.mo
+++ b/Buildings/Experimental/DHC/Loads/Controls/MixingValveControl.mo
@@ -70,7 +70,7 @@ block MixingValveControl
k=-1)
"Opposite value"
annotation (Placement(transformation(extent={{20,-50},{40,-30}})));
- Buildings.Controls.OBC.CDL.Logical.Switch swi
+ Buildings.Controls.OBC.CDL.Continuous.Switch swi
"Logical switch"
annotation (Placement(transformation(extent={{70,-10},{90,10}})));
Modelica.Blocks.Sources.BooleanExpression fixMod(
diff --git a/Buildings/Experimental/DHC/Loads/Controls/Validation/MixingValveControl.mo b/Buildings/Experimental/DHC/Loads/Controls/Validation/MixingValveControl.mo
index 0c320fa5acd..db98b70a767 100644
--- a/Buildings/Experimental/DHC/Loads/Controls/Validation/MixingValveControl.mo
+++ b/Buildings/Experimental/DHC/Loads/Controls/Validation/MixingValveControl.mo
@@ -37,7 +37,7 @@ model MixingValveControl
displayUnit="degC"))
"Chilled water primary supply temperature"
annotation (Placement(transformation(extent={{-140,70},{-120,90}})));
- Buildings.Controls.OBC.CDL.Logical.Switch TPri(
+ Buildings.Controls.OBC.CDL.Continuous.Switch TPri(
y(
final unit="K",
displayUnit="degC"))
@@ -54,7 +54,7 @@ model MixingValveControl
k=291.15)
"Chilled water secondary supply temperature set point"
annotation (Placement(transformation(extent={{-140,-110},{-120,-90}})));
- Buildings.Controls.OBC.CDL.Logical.Switch TSetSecAct(
+ Buildings.Controls.OBC.CDL.Continuous.Switch TSetSecAct(
y(
final unit="K",
displayUnit="degC"))
@@ -105,7 +105,7 @@ model MixingValveControl
m_flow_nominal=m_flow_nominal)
"Primary supply temperature (measured)"
annotation (Placement(transformation(extent={{8,10},{28,30}})));
- Buildings.Controls.OBC.CDL.Logical.Switch dTSec(
+ Buildings.Controls.OBC.CDL.Continuous.Switch dTSec(
y(
final unit="K",
displayUnit="degC"))
diff --git a/Buildings/Experimental/DHC/Loads/Validation/BaseClasses/FanCoil2PipeCooling.mo b/Buildings/Experimental/DHC/Loads/Validation/BaseClasses/FanCoil2PipeCooling.mo
index 369affcd0ab..4866d1fa85f 100644
--- a/Buildings/Experimental/DHC/Loads/Validation/BaseClasses/FanCoil2PipeCooling.mo
+++ b/Buildings/Experimental/DHC/Loads/Validation/BaseClasses/FanCoil2PipeCooling.mo
@@ -130,7 +130,7 @@ model FanCoil2PipeCooling
annotation (Placement(transformation(extent={{-10,130},{10,150}})));
Buildings.Controls.OBC.CDL.Logical.Sources.Constant con1(k=have_speVar)
annotation (Placement(transformation(extent={{-50,150},{-30,170}})));
- Buildings.Controls.OBC.CDL.Logical.Switch swi
+ Buildings.Controls.OBC.CDL.Continuous.Switch swi
"Logical switch"
annotation (Placement(transformation(extent={{26,170},{46,190}})));
equation
diff --git a/Buildings/Experimental/DHC/Loads/Validation/BaseClasses/FanCoil2PipeHeating.mo b/Buildings/Experimental/DHC/Loads/Validation/BaseClasses/FanCoil2PipeHeating.mo
index 366de46e78f..bbf0c346289 100644
--- a/Buildings/Experimental/DHC/Loads/Validation/BaseClasses/FanCoil2PipeHeating.mo
+++ b/Buildings/Experimental/DHC/Loads/Validation/BaseClasses/FanCoil2PipeHeating.mo
@@ -105,7 +105,7 @@ model FanCoil2PipeHeating
Buildings.Controls.OBC.CDL.Continuous.Gain gaiHeaFlo1(
k=1/QHea_flow_nominal)
annotation (Placement(transformation(extent={{-10,-10},{10,10}},rotation=90,origin={0,190})));
- Buildings.Controls.OBC.CDL.Logical.Switch swi
+ Buildings.Controls.OBC.CDL.Continuous.Switch swi
"Logical switch"
annotation (Placement(transformation(extent={{30,170},{50,190}})));
Buildings.Controls.OBC.CDL.Continuous.Sources.Constant one(
diff --git a/Buildings/Experimental/DHC/Loads/Validation/BaseClasses/FanCoil2PipeHeatingValve.mo b/Buildings/Experimental/DHC/Loads/Validation/BaseClasses/FanCoil2PipeHeatingValve.mo
index 5f146548c34..d00d88b3ed0 100644
--- a/Buildings/Experimental/DHC/Loads/Validation/BaseClasses/FanCoil2PipeHeatingValve.mo
+++ b/Buildings/Experimental/DHC/Loads/Validation/BaseClasses/FanCoil2PipeHeatingValve.mo
@@ -114,7 +114,7 @@ model FanCoil2PipeHeatingValve
Buildings.Controls.OBC.CDL.Logical.Sources.Constant con1(
k=have_speVar)
annotation (Placement(transformation(extent={{-60,160},{-40,180}})));
- Buildings.Controls.OBC.CDL.Logical.Switch swi
+ Buildings.Controls.OBC.CDL.Continuous.Switch swi
"Logical switch"
annotation (Placement(transformation(extent={{30,170},{50,190}})));
Fluid.FixedResistances.PressureDrop resLoa(
diff --git a/Buildings/Fluid/CHPs/BaseClasses/EnergyConversion.mo b/Buildings/Fluid/CHPs/BaseClasses/EnergyConversion.mo
index 202442316db..8ed60c077f3 100644
--- a/Buildings/Fluid/CHPs/BaseClasses/EnergyConversion.mo
+++ b/Buildings/Fluid/CHPs/BaseClasses/EnergyConversion.mo
@@ -69,7 +69,7 @@ protected
Buildings.Controls.OBC.CDL.Continuous.Sources.Constant const(final k=0)
"Zero constant"
annotation (Placement(transformation(extent={{-100,60},{-80,80}})));
- Buildings.Controls.OBC.CDL.Logical.Switch switch
+ Buildings.Controls.OBC.CDL.Continuous.Switch switch
"Switch to zero power output if not in (normal or warm-up mode)"
annotation (Placement(transformation(extent={{-60,90},{-40,110}})));
Modelica.Blocks.Sources.BooleanExpression booExp(
@@ -77,16 +77,16 @@ protected
opeMod ==CHPs.BaseClasses.Types.Mode.Normal)
"True if active mode is (warm-up or normal)"
annotation (Placement(transformation(extent={{-100,90},{-80,110}})));
- Buildings.Controls.OBC.CDL.Logical.Switch switch2
+ Buildings.Controls.OBC.CDL.Continuous.Switch switch2
"Switch between warm-up and normal value"
annotation (Placement(transformation(extent={{80,70},{100,90}})));
- Buildings.Controls.OBC.CDL.Logical.Switch switch3
+ Buildings.Controls.OBC.CDL.Continuous.Switch switch3
"Switch between warm-up and normal value"
annotation (Placement(transformation(extent={{80,10},{100,30}})));
- Buildings.Controls.OBC.CDL.Logical.Switch switch4
+ Buildings.Controls.OBC.CDL.Continuous.Switch switch4
"Switch between warm-up and normal value"
annotation (Placement(transformation(extent={{80,-50},{100,-30}})));
- Buildings.Controls.OBC.CDL.Logical.Switch switch5
+ Buildings.Controls.OBC.CDL.Continuous.Switch switch5
"Switch between warm-up and normal value"
annotation (Placement(transformation(extent={{80,-110},{100,-90}})));
Buildings.Controls.OBC.CDL.Continuous.Sources.Constant PEleTimeDel(final k=0) if
diff --git a/Buildings/Fluid/CHPs/BaseClasses/FilterPower.mo b/Buildings/Fluid/CHPs/BaseClasses/FilterPower.mo
index cbf1d4ebafa..ccbc560e311 100644
--- a/Buildings/Fluid/CHPs/BaseClasses/FilterPower.mo
+++ b/Buildings/Fluid/CHPs/BaseClasses/FilterPower.mo
@@ -41,7 +41,7 @@ protected
final fallingSlewRate(unit="W/s")=-dPEleMax,
final Td=1) "Power rate limiter"
annotation (Placement(transformation(extent={{0,20},{20,40}})));
- Buildings.Controls.OBC.CDL.Logical.Switch switch
+ Buildings.Controls.OBC.CDL.Continuous.Switch switch
annotation (Placement(transformation(extent={{70,-10},{90,10}})));
Buildings.Controls.OBC.CDL.Logical.Sources.Constant limDp(
final k=use_powerRateLimit)
diff --git a/Buildings/Fluid/CHPs/BaseClasses/PowerConsumption.mo b/Buildings/Fluid/CHPs/BaseClasses/PowerConsumption.mo
index 3fa5350e2c2..9b12151b357 100644
--- a/Buildings/Fluid/CHPs/BaseClasses/PowerConsumption.mo
+++ b/Buildings/Fluid/CHPs/BaseClasses/PowerConsumption.mo
@@ -32,10 +32,10 @@ protected
final k=PStaBy)
"Stand-by mode power consumption "
annotation (Placement(transformation(extent={{-80,50},{-60,70}})));
- Buildings.Controls.OBC.CDL.Logical.Switch switch
+ Buildings.Controls.OBC.CDL.Continuous.Switch switch
"Power consumption during stand-by or cool-down mode"
annotation (Placement(transformation(extent={{-20,20},{0,40}})));
- Buildings.Controls.OBC.CDL.Logical.Switch switch1 "Cool-down power consumption"
+ Buildings.Controls.OBC.CDL.Continuous.Switch switch1 "Cool-down power consumption"
annotation (Placement(transformation(extent={{60,-10},{80,10}})));
Buildings.Controls.OBC.CDL.Continuous.Sources.Constant const(final k=0)
"Zero power consumption"
diff --git a/Buildings/Fluid/CHPs/BaseClasses/WaterFlowControl.mo b/Buildings/Fluid/CHPs/BaseClasses/WaterFlowControl.mo
index e4c0f355eb5..3c794d29315 100644
--- a/Buildings/Fluid/CHPs/BaseClasses/WaterFlowControl.mo
+++ b/Buildings/Fluid/CHPs/BaseClasses/WaterFlowControl.mo
@@ -31,7 +31,7 @@ protected
Buildings.Utilities.Math.Biquadratic mWatIntCon(
final a=per.coeMasWat) "Internal control of water flow rate "
annotation (Placement(transformation(extent={{0,-50},{20,-30}})));
- Buildings.Controls.OBC.CDL.Logical.Switch watFloSet "Water flow setpoint"
+ Buildings.Controls.OBC.CDL.Continuous.Switch watFloSet "Water flow setpoint"
annotation (Placement(transformation(extent={{60,-10},{80,10}})));
Buildings.Controls.OBC.CDL.Continuous.Sources.Constant const(final k=0)
"Zero flow rate"
diff --git a/Buildings/Fluid/CHPs/ThermalElectricalFollowing.mo b/Buildings/Fluid/CHPs/ThermalElectricalFollowing.mo
index bcd90345462..f6bebf6871a 100644
--- a/Buildings/Fluid/CHPs/ThermalElectricalFollowing.mo
+++ b/Buildings/Fluid/CHPs/ThermalElectricalFollowing.mo
@@ -157,7 +157,7 @@ model ThermalElectricalFollowing
final k=per.PEleMax) if switchThermalElectricalFollowing
"Electric power demand if thermal following"
annotation (Placement(transformation(extent={{0,340},{20,360}})));
- Buildings.Controls.OBC.CDL.Logical.Switch swi
+ Buildings.Controls.OBC.CDL.Continuous.Switch swi
"Switch between thermal and electrical following"
annotation (Placement(transformation(extent={{100,250},{120,270}})));
Buildings.Controls.OBC.CDL.Logical.Sources.Constant optFol(
diff --git a/Buildings/Fluid/HeatPumps/Examples/EquationFitReversible.mo b/Buildings/Fluid/HeatPumps/Examples/EquationFitReversible.mo
index 700a8d3ccb8..f4a359a7b1e 100644
--- a/Buildings/Fluid/HeatPumps/Examples/EquationFitReversible.mo
+++ b/Buildings/Fluid/HeatPumps/Examples/EquationFitReversible.mo
@@ -68,7 +68,7 @@ model EquationFitReversible
Controls.OBC.CDL.Integers.GreaterThreshold intGreThr(t=-1)
"Integer threshold"
annotation (Placement(transformation(extent={{-60,0},{-40,20}})));
- Controls.OBC.CDL.Logical.Switch swi "Switch for set point temperature"
+ Controls.OBC.CDL.Continuous.Switch swi "Switch for set point temperature"
annotation (Placement(transformation(extent={{-20,0},{0,20}})));
Controls.OBC.CDL.Continuous.Sources.Ramp TSouEntCoo(
height=5,
@@ -81,10 +81,10 @@ model EquationFitReversible
duration(displayUnit="h") = 14400,
offset=-1) "Heat pump operates in heating mode"
annotation (Placement(transformation(extent={{-118,0},{-98,20}})));
- Controls.OBC.CDL.Logical.Switch swi1
+ Controls.OBC.CDL.Continuous.Switch swi1
"Switch for set point temperature"
annotation (Placement(transformation(extent={{20,60},{40,80}})));
- Controls.OBC.CDL.Logical.Switch swi2
+ Controls.OBC.CDL.Continuous.Switch swi2
"Switch for set point temperature"
annotation (Placement(transformation(extent={{80,-60},{100,-40}})));
Controls.OBC.CDL.Continuous.Sources.Ramp TSouEntHea(
diff --git a/Buildings/Resources/ReferenceResults/Dymola/Buildings_Controls_OBC_CDL_Continuous_Validation_Switch.txt b/Buildings/Resources/ReferenceResults/Dymola/Buildings_Controls_OBC_CDL_Continuous_Validation_Switch.txt
new file mode 100644
index 00000000000..4d3b037e509
--- /dev/null
+++ b/Buildings/Resources/ReferenceResults/Dymola/Buildings_Controls_OBC_CDL_Continuous_Validation_Switch.txt
@@ -0,0 +1,12 @@
+last-generated=2019-05-21
+statistics-simulation=
+{
+ "linear": " ",
+ "nonlinear": " ",
+ "numerical Jacobians": "0"
+}
+switch1.u1=[-1e+00, -9.399999985098856e-01, -8.799999970197717e-01, -8.200000000000107e-01, -7.599999940395409e-01, -6.99999988079071e-01, -6.4e-01, -5.799999761581776e-01, -5.19999988079071e-01, -4.599999940395711e-01, -4.000000059604645e-01, -3.400000178814005e-01, -2.800000298021661e-01, -2.199999701978339e-01, -1.599999821185994e-01, -1.000000014901161e-01, -4.000001341106101e-02, 1.999997094288099e-02, 8.000002682195148e-02, 1.400000149011683e-01, 2.000000029802322e-01, 2.600000476838864e-01, 3.19999964237199e-01, 3.800000238418723e-01, 4.399999403953267e-01, 5e-01, 5.600000596048154e-01, 6.199999761580569e-01, 6.800000357627302e-01, 7.399999523161136e-01, 8.00000011920929e-01, 8.600000715254601e-01, 9.199999880789859e-01, 9.800000476836591e-01, 1.039999904632682e+00, 1.100000023841858e+00, 1.160000023842312e+00, 1.219999999999773e+00, 1.280000000000227e+00, 1.339999976157688e+00, 1.399999976158142e+00, 1.460000095367318e+00, 1.520000095367204e+00, 1.579999928473517e+00, 1.63999992847454e+00, 1.700000047683716e+00, 1.760000047683602e+00, 1.820000166892778e+00, 1.879999880790938e+00, 1.939999999999545e+00, 2e+00, 2.060000000000454e+00, 2.12000000000091e+00, 2.179999952315375e+00, 2.23999995231583e+00, 2.299999952316284e+00, 2.359999952316739e+00, 2.420000190733499e+00, 2.479999904631659e+00, 2.53999990463325e+00, 2.599999904632568e+00, 2.660000143050465e+00, 2.720000143052057e+00, 2.779999856947943e+00, 2.839999856949535e+00, 2.900000095367432e+00, 2.96000009536675e+00, 3.020000095368341e+00, 3.079999809266501e+00, 3.140000047683261e+00, 3.200000047683716e+00, 3.26000004768417e+00, 3.320000047684625e+00, 3.37999999999909e+00, 3.439999999999546e+00, 3.5e+00, 3.560000000000454e+00, 3.62000000000091e+00, 3.679999952315375e+00, 3.73999995231583e+00, 3.799999952316284e+00, 3.859999666222175e+00, 3.92000019073077e+00, 3.979999904634387e+00, 4.040000190731226e+00, 4.099999904632568e+00, 4.159999618533911e+00, 4.219999904630749e+00, 4.280000095369251e+00, 4.340000381466089e+00, 4.400000095367432e+00, 4.459999809268774e+00, 4.520000095365614e+00, 4.579999809266956e+00, 4.640000095363793e+00, 4.699999809265137e+00, 4.760000000003638e+00, 4.820000286095929e+00, 4.88000000000182e+00, 4.940000286098657e+00, 5e+00]
+switch1.u2=[1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00]
+switch1.u3=[-1e+00, -9.800000193715102e-01, -9.599999791383756e-01, -9.400000000000035e-01, -9.200000178813952e-01, -8.999999761581421e-01, -8.8e-01, -8.600000119209289e-01, -8.39999976158142e-01, -8.19999988079071e-01, -8.00000011920929e-01, -7.799999761581563e-01, -7.599999999999716e-01, -7.400000000000284e-01, -7.200000238418437e-01, -6.99999988079071e-01, -6.800000119209432e-01, -6.600000357626163e-01, -6.399999761581705e-01, -6.199999999999858e-01, -6.000000238418579e-01, -5.799999642371563e-01, -5.600000119209574e-01, -5.400000119209005e-01, -5.200000000000569e-01, -5e-01, -4.799999701977629e-01, -4.600000178813508e-01, -4.399999880790426e-01, -4.200000059605213e-01, -4.000000059604645e-01, -3.799999761580852e-01, -3.600000238418152e-01, -3.39999994039507e-01, -3.200000119209857e-01, -3.00000011920929e-01, -2.799999821185498e-01, -2.600000000000284e-01, -2.39999985098846e-01, -2.200000178814502e-01, -2.000000029802322e-01, -1.799999880790143e-01, -1.59999958276777e-01, -1.400000387429907e-01, -1.200000163912986e-01, -1.000000014901161e-01, -7.999997913835291e-02, -5.999996051191588e-02, -4.000003725294565e-02, -2.000001862647274e-02, -3.774758283725532e-15, 2.000001862647274e-02, 4.000003725294565e-02, 5.999996051191588e-02, 7.999997913835308e-02, 1.000000014901161e-01, 1.200000163912987e-01, 1.400000387429906e-01, 1.59999958276777e-01, 1.799999880790141e-01, 2.000000029802322e-01, 2.200000178814502e-01, 2.400000327826683e-01, 2.599999523164547e-01, 2.799999821185498e-01, 3.00000011920929e-01, 3.200000119209859e-01, 3.400000417233651e-01, 3.599999761580285e-01, 3.799999761580851e-01, 4.000000059604645e-01, 4.200000059605212e-01, 4.400000357629004e-01, 4.599999701975639e-01, 4.79999970197763e-01, 5e-01, 5.200000000000568e-01, 5.400000596047585e-01, 5.599999642370996e-01, 5.799999642371564e-01, 6.000000238418579e-01, 6.199999284760181e-01, 6.40000023841062e-01, 6.599999880798666e-01, 6.800000834449111e-01, 6.99999988079071e-01, 7.199999523178757e-01, 7.400000476829199e-01, 7.599999523170801e-01, 7.800000476821243e-01, 8.00000011920929e-01, 8.199999165550889e-01, 8.400000119201334e-01, 8.59999976158938e-01, 8.800000715239819e-01, 8.999999761581421e-01, 9.199999403969468e-01, 9.40000035761991e-01, 9.599999403961511e-01, 9.800000953658401e-01, 1e+00]
+time=[0e+00, 5e+00]
+switch1.y=[-1e+00, -9.399999985098856e-01, -8.799999970197717e-01, -8.200000000000107e-01, -7.599999940395409e-01, -6.99999988079071e-01, -6.4e-01, -5.799999761581776e-01, -5.19999988079071e-01, -4.599999940395711e-01, -4.000000059604645e-01, -3.400000178814005e-01, -2.800000298021661e-01, -2.199999701978339e-01, -1.599999821185994e-01, -1.000000014901161e-01, -4.000001341106101e-02, 1.999997094288099e-02, 8.000002682195148e-02, 1.400000149011683e-01, 2.000000029802322e-01, -5.799999642371563e-01, -5.600000119209574e-01, -5.400000119209005e-01, -5.200000000000569e-01, -5e-01, -4.799999701977629e-01, -4.600000178813508e-01, -4.399999880790426e-01, -4.200000059605213e-01, -4.000000059604645e-01, -3.799999761580852e-01, -3.600000238418152e-01, -3.39999994039507e-01, -3.200000119209857e-01, -3.00000011920929e-01, -2.799999821185498e-01, -2.600000000000284e-01, -2.39999985098846e-01, -2.200000178814502e-01, -2.000000029802322e-01, 1.460000095367318e+00, 1.520000095367204e+00, 1.579999928473517e+00, 1.63999992847454e+00, 1.700000047683716e+00, 1.760000047683602e+00, 1.820000166892778e+00, 1.879999880790938e+00, 1.939999999999545e+00, 2e+00, 2.060000000000454e+00, 2.12000000000091e+00, 2.179999952315375e+00, 2.23999995231583e+00, 2.299999952316284e+00, 2.359999952316739e+00, 2.420000190733499e+00, 2.479999904631659e+00, 2.53999990463325e+00, 2.599999904632568e+00, 2.200000178814502e-01, 2.400000327826683e-01, 2.599999523164547e-01, 2.799999821185498e-01, 3.00000011920929e-01, 3.200000119209859e-01, 3.400000417233651e-01, 3.599999761580285e-01, 3.799999761580851e-01, 4.000000059604645e-01, 4.200000059605212e-01, 4.400000357629004e-01, 4.599999701975639e-01, 4.79999970197763e-01, 5e-01, 5.200000000000568e-01, 5.400000596047585e-01, 5.599999642370996e-01, 5.799999642371564e-01, 6.000000238418579e-01, 3.859999666222175e+00, 3.92000019073077e+00, 3.979999904634387e+00, 4.040000190731226e+00, 4.099999904632568e+00, 4.159999618533911e+00, 4.219999904630749e+00, 4.280000095369251e+00, 4.340000381466089e+00, 4.400000095367432e+00, 4.459999809268774e+00, 4.520000095365614e+00, 4.579999809266956e+00, 4.640000095363793e+00, 4.699999809265137e+00, 4.760000000003638e+00, 4.820000286095929e+00, 4.88000000000182e+00, 4.940000286098657e+00, 5e+00]
diff --git a/Buildings/Resources/ReferenceResults/Dymola/Buildings_Controls_OBC_CDL_Logical_Validation_IntegerSwitch.txt b/Buildings/Resources/ReferenceResults/Dymola/Buildings_Controls_OBC_CDL_Integers_Validation_Switch.txt
similarity index 100%
rename from Buildings/Resources/ReferenceResults/Dymola/Buildings_Controls_OBC_CDL_Logical_Validation_IntegerSwitch.txt
rename to Buildings/Resources/ReferenceResults/Dymola/Buildings_Controls_OBC_CDL_Integers_Validation_Switch.txt
diff --git a/Buildings/Resources/ReferenceResults/Dymola/Buildings_Controls_OBC_CDL_Logical_Validation_LogicalSwitch.txt b/Buildings/Resources/ReferenceResults/Dymola/Buildings_Controls_OBC_CDL_Logical_Validation_LogicalSwitch.txt
deleted file mode 100644
index 59d9815fa14..00000000000
--- a/Buildings/Resources/ReferenceResults/Dymola/Buildings_Controls_OBC_CDL_Logical_Validation_LogicalSwitch.txt
+++ /dev/null
@@ -1,12 +0,0 @@
-last-generated=2018-07-13
-statistics-simulation=
-{
- "linear": " ",
- "nonlinear": " ",
- "numerical Jacobians": "0"
-}
-logicalSwitch.y=[1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 9.999952316238661e-01, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00]
-logicalSwitch.u1=[1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 9.999952316238661e-01, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 9.999952316238883e-01, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00]
-logicalSwitch.u2=[1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00]
-logicalSwitch.u3=[1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00]
-time=[0e+00, 5e+00]
diff --git a/Buildings/Resources/ReferenceResults/Dymola/Buildings_Controls_OBC_CDL_Logical_Validation_Switch.txt b/Buildings/Resources/ReferenceResults/Dymola/Buildings_Controls_OBC_CDL_Logical_Validation_Switch.txt
index 4d3b037e509..59d9815fa14 100644
--- a/Buildings/Resources/ReferenceResults/Dymola/Buildings_Controls_OBC_CDL_Logical_Validation_Switch.txt
+++ b/Buildings/Resources/ReferenceResults/Dymola/Buildings_Controls_OBC_CDL_Logical_Validation_Switch.txt
@@ -1,12 +1,12 @@
-last-generated=2019-05-21
+last-generated=2018-07-13
statistics-simulation=
{
"linear": " ",
"nonlinear": " ",
"numerical Jacobians": "0"
}
-switch1.u1=[-1e+00, -9.399999985098856e-01, -8.799999970197717e-01, -8.200000000000107e-01, -7.599999940395409e-01, -6.99999988079071e-01, -6.4e-01, -5.799999761581776e-01, -5.19999988079071e-01, -4.599999940395711e-01, -4.000000059604645e-01, -3.400000178814005e-01, -2.800000298021661e-01, -2.199999701978339e-01, -1.599999821185994e-01, -1.000000014901161e-01, -4.000001341106101e-02, 1.999997094288099e-02, 8.000002682195148e-02, 1.400000149011683e-01, 2.000000029802322e-01, 2.600000476838864e-01, 3.19999964237199e-01, 3.800000238418723e-01, 4.399999403953267e-01, 5e-01, 5.600000596048154e-01, 6.199999761580569e-01, 6.800000357627302e-01, 7.399999523161136e-01, 8.00000011920929e-01, 8.600000715254601e-01, 9.199999880789859e-01, 9.800000476836591e-01, 1.039999904632682e+00, 1.100000023841858e+00, 1.160000023842312e+00, 1.219999999999773e+00, 1.280000000000227e+00, 1.339999976157688e+00, 1.399999976158142e+00, 1.460000095367318e+00, 1.520000095367204e+00, 1.579999928473517e+00, 1.63999992847454e+00, 1.700000047683716e+00, 1.760000047683602e+00, 1.820000166892778e+00, 1.879999880790938e+00, 1.939999999999545e+00, 2e+00, 2.060000000000454e+00, 2.12000000000091e+00, 2.179999952315375e+00, 2.23999995231583e+00, 2.299999952316284e+00, 2.359999952316739e+00, 2.420000190733499e+00, 2.479999904631659e+00, 2.53999990463325e+00, 2.599999904632568e+00, 2.660000143050465e+00, 2.720000143052057e+00, 2.779999856947943e+00, 2.839999856949535e+00, 2.900000095367432e+00, 2.96000009536675e+00, 3.020000095368341e+00, 3.079999809266501e+00, 3.140000047683261e+00, 3.200000047683716e+00, 3.26000004768417e+00, 3.320000047684625e+00, 3.37999999999909e+00, 3.439999999999546e+00, 3.5e+00, 3.560000000000454e+00, 3.62000000000091e+00, 3.679999952315375e+00, 3.73999995231583e+00, 3.799999952316284e+00, 3.859999666222175e+00, 3.92000019073077e+00, 3.979999904634387e+00, 4.040000190731226e+00, 4.099999904632568e+00, 4.159999618533911e+00, 4.219999904630749e+00, 4.280000095369251e+00, 4.340000381466089e+00, 4.400000095367432e+00, 4.459999809268774e+00, 4.520000095365614e+00, 4.579999809266956e+00, 4.640000095363793e+00, 4.699999809265137e+00, 4.760000000003638e+00, 4.820000286095929e+00, 4.88000000000182e+00, 4.940000286098657e+00, 5e+00]
-switch1.u2=[1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00]
-switch1.u3=[-1e+00, -9.800000193715102e-01, -9.599999791383756e-01, -9.400000000000035e-01, -9.200000178813952e-01, -8.999999761581421e-01, -8.8e-01, -8.600000119209289e-01, -8.39999976158142e-01, -8.19999988079071e-01, -8.00000011920929e-01, -7.799999761581563e-01, -7.599999999999716e-01, -7.400000000000284e-01, -7.200000238418437e-01, -6.99999988079071e-01, -6.800000119209432e-01, -6.600000357626163e-01, -6.399999761581705e-01, -6.199999999999858e-01, -6.000000238418579e-01, -5.799999642371563e-01, -5.600000119209574e-01, -5.400000119209005e-01, -5.200000000000569e-01, -5e-01, -4.799999701977629e-01, -4.600000178813508e-01, -4.399999880790426e-01, -4.200000059605213e-01, -4.000000059604645e-01, -3.799999761580852e-01, -3.600000238418152e-01, -3.39999994039507e-01, -3.200000119209857e-01, -3.00000011920929e-01, -2.799999821185498e-01, -2.600000000000284e-01, -2.39999985098846e-01, -2.200000178814502e-01, -2.000000029802322e-01, -1.799999880790143e-01, -1.59999958276777e-01, -1.400000387429907e-01, -1.200000163912986e-01, -1.000000014901161e-01, -7.999997913835291e-02, -5.999996051191588e-02, -4.000003725294565e-02, -2.000001862647274e-02, -3.774758283725532e-15, 2.000001862647274e-02, 4.000003725294565e-02, 5.999996051191588e-02, 7.999997913835308e-02, 1.000000014901161e-01, 1.200000163912987e-01, 1.400000387429906e-01, 1.59999958276777e-01, 1.799999880790141e-01, 2.000000029802322e-01, 2.200000178814502e-01, 2.400000327826683e-01, 2.599999523164547e-01, 2.799999821185498e-01, 3.00000011920929e-01, 3.200000119209859e-01, 3.400000417233651e-01, 3.599999761580285e-01, 3.799999761580851e-01, 4.000000059604645e-01, 4.200000059605212e-01, 4.400000357629004e-01, 4.599999701975639e-01, 4.79999970197763e-01, 5e-01, 5.200000000000568e-01, 5.400000596047585e-01, 5.599999642370996e-01, 5.799999642371564e-01, 6.000000238418579e-01, 6.199999284760181e-01, 6.40000023841062e-01, 6.599999880798666e-01, 6.800000834449111e-01, 6.99999988079071e-01, 7.199999523178757e-01, 7.400000476829199e-01, 7.599999523170801e-01, 7.800000476821243e-01, 8.00000011920929e-01, 8.199999165550889e-01, 8.400000119201334e-01, 8.59999976158938e-01, 8.800000715239819e-01, 8.999999761581421e-01, 9.199999403969468e-01, 9.40000035761991e-01, 9.599999403961511e-01, 9.800000953658401e-01, 1e+00]
+logicalSwitch.y=[1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 9.999952316238661e-01, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00]
+logicalSwitch.u1=[1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 9.999952316238661e-01, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 9.999952316238883e-01, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00]
+logicalSwitch.u2=[1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00]
+logicalSwitch.u3=[1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00]
time=[0e+00, 5e+00]
-switch1.y=[-1e+00, -9.399999985098856e-01, -8.799999970197717e-01, -8.200000000000107e-01, -7.599999940395409e-01, -6.99999988079071e-01, -6.4e-01, -5.799999761581776e-01, -5.19999988079071e-01, -4.599999940395711e-01, -4.000000059604645e-01, -3.400000178814005e-01, -2.800000298021661e-01, -2.199999701978339e-01, -1.599999821185994e-01, -1.000000014901161e-01, -4.000001341106101e-02, 1.999997094288099e-02, 8.000002682195148e-02, 1.400000149011683e-01, 2.000000029802322e-01, -5.799999642371563e-01, -5.600000119209574e-01, -5.400000119209005e-01, -5.200000000000569e-01, -5e-01, -4.799999701977629e-01, -4.600000178813508e-01, -4.399999880790426e-01, -4.200000059605213e-01, -4.000000059604645e-01, -3.799999761580852e-01, -3.600000238418152e-01, -3.39999994039507e-01, -3.200000119209857e-01, -3.00000011920929e-01, -2.799999821185498e-01, -2.600000000000284e-01, -2.39999985098846e-01, -2.200000178814502e-01, -2.000000029802322e-01, 1.460000095367318e+00, 1.520000095367204e+00, 1.579999928473517e+00, 1.63999992847454e+00, 1.700000047683716e+00, 1.760000047683602e+00, 1.820000166892778e+00, 1.879999880790938e+00, 1.939999999999545e+00, 2e+00, 2.060000000000454e+00, 2.12000000000091e+00, 2.179999952315375e+00, 2.23999995231583e+00, 2.299999952316284e+00, 2.359999952316739e+00, 2.420000190733499e+00, 2.479999904631659e+00, 2.53999990463325e+00, 2.599999904632568e+00, 2.200000178814502e-01, 2.400000327826683e-01, 2.599999523164547e-01, 2.799999821185498e-01, 3.00000011920929e-01, 3.200000119209859e-01, 3.400000417233651e-01, 3.599999761580285e-01, 3.799999761580851e-01, 4.000000059604645e-01, 4.200000059605212e-01, 4.400000357629004e-01, 4.599999701975639e-01, 4.79999970197763e-01, 5e-01, 5.200000000000568e-01, 5.400000596047585e-01, 5.599999642370996e-01, 5.799999642371564e-01, 6.000000238418579e-01, 3.859999666222175e+00, 3.92000019073077e+00, 3.979999904634387e+00, 4.040000190731226e+00, 4.099999904632568e+00, 4.159999618533911e+00, 4.219999904630749e+00, 4.280000095369251e+00, 4.340000381466089e+00, 4.400000095367432e+00, 4.459999809268774e+00, 4.520000095365614e+00, 4.579999809266956e+00, 4.640000095363793e+00, 4.699999809265137e+00, 4.760000000003638e+00, 4.820000286095929e+00, 4.88000000000182e+00, 4.940000286098657e+00, 5e+00]
diff --git a/Buildings/Resources/Scripts/Dymola/Controls/OBC/CDL/Continuous/Validation/Switch.mos b/Buildings/Resources/Scripts/Dymola/Controls/OBC/CDL/Continuous/Validation/Switch.mos
new file mode 100644
index 00000000000..1a4d969954d
--- /dev/null
+++ b/Buildings/Resources/Scripts/Dymola/Controls/OBC/CDL/Continuous/Validation/Switch.mos
@@ -0,0 +1,3 @@
+simulateModel("Buildings.Controls.OBC.CDL.Continuous.Validation.Switch", stopTime=5.0, method="Cvode", tolerance=1e-06, resultFile="ConSwitch");
+createPlot(id=1, position={15, 10, 1000, 600}, subPlot=1, y={"switch1.u1","switch1.u2","switch1.u3"}, range={0.0, 5.0, -3.5, 3.5}, grid=true, colors={{238,46,47},{0,140,72},{28,108,200}});
+createPlot(id=1, position={15, 10, 1000, 600}, subPlot=2, y={"switch1.y"}, range={0.0, 5.0, -3.5, 3.5}, grid=true, colors={{28,108,200}});
diff --git a/Buildings/Resources/Scripts/Dymola/Controls/OBC/CDL/Logical/Validation/IntegerSwitch.mos b/Buildings/Resources/Scripts/Dymola/Controls/OBC/CDL/Integers/Validation/Switch.mos
similarity index 60%
rename from Buildings/Resources/Scripts/Dymola/Controls/OBC/CDL/Logical/Validation/IntegerSwitch.mos
rename to Buildings/Resources/Scripts/Dymola/Controls/OBC/CDL/Integers/Validation/Switch.mos
index 9a909785b6b..6a3401168e9 100644
--- a/Buildings/Resources/Scripts/Dymola/Controls/OBC/CDL/Logical/Validation/IntegerSwitch.mos
+++ b/Buildings/Resources/Scripts/Dymola/Controls/OBC/CDL/Integers/Validation/Switch.mos
@@ -1,2 +1,2 @@
-simulateModel("Buildings.Controls.OBC.CDL.Logical.Validation.IntegerSwitch", stopTime=5.0, method="Cvode", tolerance=1e-06, resultFile="IntegerSwitch1");
+simulateModel("Buildings.Controls.OBC.CDL.Integers.Validation.Switch", stopTime=5.0, method="Cvode", tolerance=1e-06, resultFile="IntegerSwitch1");
createPlot(id=1, position={15, 10, 900, 420}, y={"integerSwitch.u1", "integerSwitch.u2", "integerSwitch.u3", "integerSwitch.y"}, range={0.0, 5.0, -3.5, 3.5}, grid=true, colors={{238,46,47},{28,108,200},{28,108,200},{28,108,200}});
diff --git a/Buildings/Resources/Scripts/Dymola/Controls/OBC/CDL/Logical/Validation/LogicalSwitch.mos b/Buildings/Resources/Scripts/Dymola/Controls/OBC/CDL/Logical/Validation/LogicalSwitch.mos
deleted file mode 100644
index 8a94303499d..00000000000
--- a/Buildings/Resources/Scripts/Dymola/Controls/OBC/CDL/Logical/Validation/LogicalSwitch.mos
+++ /dev/null
@@ -1,2 +0,0 @@
-simulateModel("Buildings.Controls.OBC.CDL.Logical.Validation.LogicalSwitch", stopTime=5.0, method="Cvode", tolerance=1e-06, resultFile="LogicalSwitch1");
-createPlot(id=1, position={15, 10, 900, 420}, y={"logicalSwitch.u1", "logicalSwitch.u2", "logicalSwitch.u3", "logicalSwitch.y"}, range={0.0, 5.0, -3.5, 3.5}, grid=true, colors={{238,46,47},{28,108,200},{28,108,200},{28,108,200}});
diff --git a/Buildings/Resources/Scripts/Dymola/Controls/OBC/CDL/Logical/Validation/Switch.mos b/Buildings/Resources/Scripts/Dymola/Controls/OBC/CDL/Logical/Validation/Switch.mos
index 439c1b888e6..60f4cd4ee6d 100644
--- a/Buildings/Resources/Scripts/Dymola/Controls/OBC/CDL/Logical/Validation/Switch.mos
+++ b/Buildings/Resources/Scripts/Dymola/Controls/OBC/CDL/Logical/Validation/Switch.mos
@@ -1,3 +1,2 @@
-simulateModel("Buildings.Controls.OBC.CDL.Logical.Validation.Switch", stopTime=5.0, method="Cvode", tolerance=1e-06, resultFile="Switch1");
-createPlot(id=1, position={15, 10, 1000, 600}, subPlot=1, y={"switch1.u1","switch1.u2","switch1.u3"}, range={0.0, 5.0, -3.5, 3.5}, grid=true, colors={{238,46,47},{0,140,72},{28,108,200}});
-createPlot(id=1, position={15, 10, 1000, 600}, subPlot=2, y={"switch1.y"}, range={0.0, 5.0, -3.5, 3.5}, grid=true, colors={{28,108,200}});
+simulateModel("Buildings.Controls.OBC.CDL.Logical.Validation.Switch", stopTime=5.0, method="Cvode", tolerance=1e-06, resultFile="LogicalSwitch1");
+createPlot(id=1, position={15, 10, 900, 420}, y={"logicalSwitch.u1", "logicalSwitch.u2", "logicalSwitch.u3", "logicalSwitch.y"}, range={0.0, 5.0, -3.5, 3.5}, grid=true, colors={{238,46,47},{28,108,200},{28,108,200},{28,108,200}});
diff --git a/Buildings/Resources/Scripts/Dymola/ConvertBuildings_from_8_to_9.0.0.mos b/Buildings/Resources/Scripts/Dymola/ConvertBuildings_from_8_to_9.0.0.mos
index 8fcd5c9d14e..875fbf5fcc0 100644
--- a/Buildings/Resources/Scripts/Dymola/ConvertBuildings_from_8_to_9.0.0.mos
+++ b/Buildings/Resources/Scripts/Dymola/ConvertBuildings_from_8_to_9.0.0.mos
@@ -91,3 +91,11 @@ convertClass("Buildings.Applications.DataCenters.ChillerCooled.Controls.Variable
"Buildings.Applications.BaseClasses.Controls.VariableSpeedPumpStage");
convertElement("Buildings.Fluid.HeatExchangers.CoolingTowers.YorkCalc",
"TWatIn0", "TWatIn_nominal");
+
+// Conversion for https://github.com/lbl-srg/modelica-buildings/issues/2650
+convertClass("Buildings.Controls.OBC.CDL.Logical.IntegerSwitch",
+ "Buildings.Controls.OBC.CDL.Integers.Switch")
+convertClass("Buildings.Controls.OBC.CDL.Logical.Switch",
+ "Buildings.Controls.OBC.CDL.Continuous.Switch")
+convertClass("Buildings.Controls.OBC.CDL.Logical.LogicalSwitch",
+ "Buildings.Controls.OBC.CDL.Logical.Switch")
diff --git a/Buildings/Resources/Scripts/OpenModelica/compareVars/Buildings.Controls.OBC.CDL.Continuous.Validation.Switch.mos b/Buildings/Resources/Scripts/OpenModelica/compareVars/Buildings.Controls.OBC.CDL.Continuous.Validation.Switch.mos
new file mode 100644
index 00000000000..0ec1b8f25c7
--- /dev/null
+++ b/Buildings/Resources/Scripts/OpenModelica/compareVars/Buildings.Controls.OBC.CDL.Continuous.Validation.Switch.mos
@@ -0,0 +1,7 @@
+compareVars :=
+ {
+ "switch1.u1",
+ "switch1.u2",
+ "switch1.u3",
+ "switch1.y"
+ };
diff --git a/Buildings/Resources/Scripts/OpenModelica/compareVars/Buildings.Controls.OBC.CDL.Logical.Validation.IntegerSwitch.mos b/Buildings/Resources/Scripts/OpenModelica/compareVars/Buildings.Controls.OBC.CDL.Integers.Validation.Switch.mos
similarity index 100%
rename from Buildings/Resources/Scripts/OpenModelica/compareVars/Buildings.Controls.OBC.CDL.Logical.Validation.IntegerSwitch.mos
rename to Buildings/Resources/Scripts/OpenModelica/compareVars/Buildings.Controls.OBC.CDL.Integers.Validation.Switch.mos
diff --git a/Buildings/Resources/Scripts/OpenModelica/compareVars/Buildings.Controls.OBC.CDL.Logical.Validation.LogicalSwitch.mos b/Buildings/Resources/Scripts/OpenModelica/compareVars/Buildings.Controls.OBC.CDL.Logical.Validation.LogicalSwitch.mos
deleted file mode 100644
index fdfd5bfd2d7..00000000000
--- a/Buildings/Resources/Scripts/OpenModelica/compareVars/Buildings.Controls.OBC.CDL.Logical.Validation.LogicalSwitch.mos
+++ /dev/null
@@ -1,7 +0,0 @@
-compareVars :=
- {
- "logicalSwitch.u1",
- "logicalSwitch.u2",
- "logicalSwitch.u3",
- "logicalSwitch.y"
- };
diff --git a/Buildings/Resources/Scripts/OpenModelica/compareVars/Buildings.Controls.OBC.CDL.Logical.Validation.Switch.mos b/Buildings/Resources/Scripts/OpenModelica/compareVars/Buildings.Controls.OBC.CDL.Logical.Validation.Switch.mos
index 0ec1b8f25c7..fdfd5bfd2d7 100644
--- a/Buildings/Resources/Scripts/OpenModelica/compareVars/Buildings.Controls.OBC.CDL.Logical.Validation.Switch.mos
+++ b/Buildings/Resources/Scripts/OpenModelica/compareVars/Buildings.Controls.OBC.CDL.Logical.Validation.Switch.mos
@@ -1,7 +1,7 @@
compareVars :=
{
- "switch1.u1",
- "switch1.u2",
- "switch1.u3",
- "switch1.y"
+ "logicalSwitch.u1",
+ "logicalSwitch.u2",
+ "logicalSwitch.u3",
+ "logicalSwitch.y"
};
diff --git a/Buildings/package.mo b/Buildings/package.mo
index 5150494a474..53a00157280 100644
--- a/Buildings/package.mo
+++ b/Buildings/package.mo
@@ -482,6 +482,17 @@ have been improved in a
For Dymola, a conversion script makes this change.
+
+ Buildings.Controls.OBC.CDL.Logical.IntegerSwitch
+ Buildings.Controls.OBC.CDL.Logical.LogicalSwitch
+ Buildings.Controls.OBC.CDL.Logical.Switch
+ |
+ Moved the blocks to CDL.Integers.Switch , CDL.Logical.Switch ,
+ and CDL.Continuous.Switch .
+ This is for issue 2650.
+ For Dymola, a conversion script makes this change.
+ |
+
Buildings.Electrical
|