From aabfacc305ec728f0a5accba4965b3fb3e917f49 Mon Sep 17 00:00:00 2001 From: JayHuLBL Date: Fri, 27 Mar 2020 15:30:35 -0700 Subject: [PATCH 01/10] cleaned parameter declarations in package AHUs.MultiZone, #1853 [ci skip] --- .../G36_PR1/AHUs/MultiZone/VAV/Controller.mo | 185 ++++++++++++++---- .../MultiZone/VAV/Economizers/Controller.mo | 63 ++++-- .../VAV/Economizers/Subsequences/Enable.mo | 31 ++- .../VAV/Economizers/Subsequences/Limits.mo | 8 +- .../Economizers/Subsequences/Modulation.mo | 4 +- .../Validation/Enable_FreProSta.mo | 35 ++-- .../Validation/Enable_TOut_hOut.mo | 85 ++++---- .../Validation/Limits_LoopDisable.mo | 46 +++-- .../Validation/Limits_VOut_flow.mo | 22 ++- .../Validation/Controller_Disable.mo | 126 ++++++------ .../Validation/Controller_Mod_DamLim.mo | 98 ++++++---- .../MultiZone/VAV/SetPoints/ExhaustDamper.mo | 5 +- .../MultiZone/VAV/SetPoints/OutsideAirFlow.mo | 21 +- .../VAV/SetPoints/ReturnFanDirectPressure.mo | 17 +- .../AHUs/MultiZone/VAV/SetPoints/SupplyFan.mo | 42 +++- .../MultiZone/VAV/SetPoints/SupplySignals.mo | 18 +- .../VAV/SetPoints/SupplyTemperature.mo | 75 +++++-- 17 files changed, 588 insertions(+), 293 deletions(-) diff --git a/Buildings/Controls/OBC/ASHRAE/G36_PR1/AHUs/MultiZone/VAV/Controller.mo b/Buildings/Controls/OBC/ASHRAE/G36_PR1/AHUs/MultiZone/VAV/Controller.mo index 56ccc8db9c0..8b71926f844 100644 --- a/Buildings/Controls/OBC/ASHRAE/G36_PR1/AHUs/MultiZone/VAV/Controller.mo +++ b/Buildings/Controls/OBC/ASHRAE/G36_PR1/AHUs/MultiZone/VAV/Controller.mo @@ -1,13 +1,18 @@ within Buildings.Controls.OBC.ASHRAE.G36_PR1.AHUs.MultiZone.VAV; block Controller "Multizone AHU controller that composes subsequences for controlling fan speed, dampers, and supply air temperature" - parameter Modelica.SIunits.Time samplePeriod=120 + parameter Real samplePeriod( + final unit="s", + final quantity="Time")=120 "Sample period of component, set to the same value to the trim and respond sequence"; parameter Integer numZon(min=2) "Total number of served VAV boxes" annotation (Dialog(group="System and building parameters")); - parameter Modelica.SIunits.Area AFlo[numZon] "Floor area of each zone" + parameter Real AFlo[numZon]( + final unit=fill("m2", numZon), + final quantity=fill("Area", numZon)) + "Floor area of each zone" annotation (Dialog(group="System and building parameters")); parameter Boolean have_occSen=false @@ -35,15 +40,22 @@ block Controller "Multizone AHU controller that composes subsequences for contro "Set to true if enthalpy measurement is used in addition to temperature measurement" annotation (Evaluate=true,Dialog(tab="Economizer")); - parameter Modelica.SIunits.Time delta=5 + parameter Real delta( + final unit="s", + final quantity="Time")=5 "Time horizon over which the outdoor air flow measurment is averaged" annotation (Evaluate=true,Dialog(tab="Economizer")); - parameter Modelica.SIunits.TemperatureDifference delTOutHis=1 + parameter Real delTOutHis( + final unit="K", + final displayUnit="K", + final quantity="TemperatureDifference")=1 "Delta between the temperature hysteresis high and low limit" annotation (Evaluate=true, Dialog(tab="Economizer")); - parameter Modelica.SIunits.SpecificEnergy delEntHis=1000 + parameter Real delEntHis( + final unit="J/kg", + final quantity="SpecificEnergy")=1000 "Delta between the enthalpy hysteresis high and low limits" annotation (Evaluate=true, Dialog(tab="Economizer", enable=use_enthalpy)); @@ -87,13 +99,17 @@ block Controller "Multizone AHU controller that composes subsequences for contro "Gain of controller for minimum outdoor air intake" annotation (Dialog(group="Economizer PID controller")); - parameter Modelica.SIunits.Time TiMinOut=1200 + parameter Real TiMinOut( + final unit="s", + final quantity="Time")=1200 "Time constant of controller for minimum outdoor air intake" annotation (Dialog(group="Economizer PID controller", enable=controllerTypeMinOut == Buildings.Controls.OBC.CDL.Types.SimpleController.PI or controllerTypeMinOut == Buildings.Controls.OBC.CDL.Types.SimpleController.PID)); - parameter Modelica.SIunits.Time TdMinOut=0.1 + parameter Real TdMinOut( + final unit="s", + final quantity="Time")=0.1 "Time constant of derivative block for minimum outdoor air intake" annotation (Dialog(group="Economizer PID controller", enable=controllerTypeMinOut == Buildings.Controls.OBC.CDL.Types.SimpleController.PD @@ -116,21 +132,29 @@ block Controller "Multizone AHU controller that composes subsequences for contro "Gain for mixed air temperature tracking for freeze protection, used if use_TMix=true" annotation(Dialog(group="Economizer freeze protection", enable=use_TMix)); - parameter Modelica.SIunits.Time TiFre(max=TiMinOut)=120 + parameter Real TiFre( + final unit="s", + final quantity="Time", + final max=TiMinOut)=120 "Time constant of controller for mixed air temperature tracking for freeze protection. Require TiFre < TiMinOut" annotation(Dialog(group="Economizer freeze protection", enable=use_TMix and (controllerTypeFre == Buildings.Controls.OBC.CDL.Types.SimpleController.PI or controllerTypeFre == Buildings.Controls.OBC.CDL.Types.SimpleController.PID))); - parameter Modelica.SIunits.Time TdFre=0.1 + parameter Real TdFre( + final unit="s", + final quantity="Time")=0.1 "Time constant of derivative block for freeze protection" annotation (Dialog(group="Economizer freeze protection", enable=use_TMix and (controllerTypeFre == Buildings.Controls.OBC.CDL.Types.SimpleController.PD or controllerTypeFre == Buildings.Controls.OBC.CDL.Types.SimpleController.PID))); - parameter Modelica.SIunits.Temperature TFreSet = 279.15 + parameter Real TFreSet( + final unit="K", + final displayUnit="degC", + final quantity="ThermodynamicTemperature")= 279.15 "Lower limit for mixed air temperature for freeze protection, used if use_TMix=true" annotation(Dialog(group="Economizer freeze protection", enable=use_TMix)); @@ -144,32 +168,47 @@ block Controller "Multizone AHU controller that composes subsequences for contro annotation (Evaluate=true, Dialog(tab="Economizer", group="Damper limits")); - parameter Modelica.SIunits.Time retDamFulOpeTim=180 + parameter Real retDamFulOpeTim( + final unit="s", + final quantity="Time")=180 "Time period to keep RA damper fully open before releasing it for minimum outdoor airflow control at disable to avoid pressure fluctuations" annotation (Evaluate=true, Dialog(tab="Economizer", group="Economizer delays at disable")); - parameter Modelica.SIunits.Time disDel=15 + parameter Real disDel( + final unit="s", + final quantity="Time")=15 "Short time delay before closing the OA damper at disable to avoid pressure fluctuations" annotation (Evaluate=true,Dialog(tab="Economizer", group="Economizer delays at disable")); // ----------- parameters for fan speed control ----------- - parameter Modelica.SIunits.PressureDifference pIniSet(displayUnit="Pa")=60 + parameter Real pIniSet( + final unit="Pa", + final displayUnit="Pa", + final quantity="PressureDifference")=60 "Initial pressure setpoint for fan speed control" annotation (Evaluate=true, Dialog(tab="Fan speed", group="Trim and respond for reseting duct static pressure setpoint")); - parameter Modelica.SIunits.PressureDifference pMinSet(displayUnit="Pa")=25 + parameter Real pMinSet( + final unit="Pa", + final displayUnit="Pa", + final quantity="PressureDifference")=25 "Minimum pressure setpoint for fan speed control" annotation (Evaluate=true, Dialog(tab="Fan speed", group="Trim and respond for reseting duct static pressure setpoint")); - parameter Modelica.SIunits.PressureDifference pMaxSet(displayUnit="Pa")=400 + parameter Real pMaxSet( + final unit="Pa", + final displayUnit="Pa", + final quantity="PressureDifference")=400 "Maximum pressure setpoint for fan speed control" annotation (Evaluate=true, Dialog(tab="Fan speed", group="Trim and respond for reseting duct static pressure setpoint")); - parameter Modelica.SIunits.Time pDelTim=600 + parameter Real pDelTim( + final unit="s", + final quantity="Time")=600 "Delay time after which trim and respond is activated" annotation (Evaluate=true, Dialog(tab="Fan speed", group="Trim and respond for reseting duct static pressure setpoint")); @@ -179,17 +218,26 @@ block Controller "Multizone AHU controller that composes subsequences for contro annotation (Evaluate=true, Dialog(tab="Fan speed", group="Trim and respond for reseting duct static pressure setpoint")); - parameter Modelica.SIunits.PressureDifference pTriAmo(displayUnit="Pa")=-12.0 + parameter Real pTriAmo( + final unit="Pa", + final displayUnit="Pa", + final quantity="PressureDifference")=-12.0 "Trim amount for fan speed control" annotation (Evaluate=true, Dialog(tab="Fan speed", group="Trim and respond for reseting duct static pressure setpoint")); - parameter Modelica.SIunits.PressureDifference pResAmo(displayUnit="Pa")=15 + parameter Real pResAmo( + final unit="Pa", + final displayUnit="Pa", + final quantity="PressureDifference")=15 "Respond amount (must be opposite in to triAmo) for fan speed control" annotation (Evaluate=true, Dialog(tab="Fan speed", group="Trim and respond for reseting duct static pressure setpoint")); - parameter Modelica.SIunits.PressureDifference pMaxRes(displayUnit="Pa")=32 + parameter Real pMaxRes( + final unit="Pa", + final displayUnit="Pa", + final quantity="PressureDifference")=32 "Maximum response per time interval (same sign as resAmo) for fan speed control" annotation (Evaluate=true, Dialog(tab="Fan speed", group="Trim and respond for reseting duct static pressure setpoint")); @@ -202,13 +250,17 @@ block Controller "Multizone AHU controller that composes subsequences for contro "Gain of fan fan speed controller, normalized using pMaxSet" annotation (Dialog(group="Fan speed PID controller")); - parameter Modelica.SIunits.Time TiFanSpe=60 + parameter Real TiFanSpe( + final unit="s", + final quantity="Time")=60 "Time constant of integrator block for fan speed" annotation (Dialog(group="Fan speed PID controller", enable=controllerTypeFanSpe == Buildings.Controls.OBC.CDL.Types.SimpleController.PI or controllerTypeFanSpe == Buildings.Controls.OBC.CDL.Types.SimpleController.PID)); - parameter Modelica.SIunits.Time TdFanSpe=0.1 + parameter Real TdFanSpe( + final unit="s", + final quantity="Time")=0.1 "Time constant of derivative block for fan speed" annotation (Dialog(group="Fan speed PID controller", enable=controllerTypeFanSpe == Buildings.Controls.OBC.CDL.Types.SimpleController.PD @@ -247,18 +299,23 @@ block Controller "Multizone AHU controller that composes subsequences for contro annotation (Evaluate=true, Dialog(tab="Minimum outdoor airflow rate", group="Nominal conditions")); - parameter Modelica.SIunits.VolumeFlowRate VOutPerPer_flow[numZon]= - fill(2.5e-3, outAirSetPoi.numZon) + parameter Real VOutPerPer_flow[numZon]( + final unit=fill("m3/s", numZon), + final quantity=fill("VolumeFlowRate", numZon))=fill(2.5e-3, outAirSetPoi.numZon) "Outdoor air rate per person" annotation (Evaluate=true, Dialog(tab="Minimum outdoor airflow rate", group="Nominal conditions")); - parameter Modelica.SIunits.VolumeFlowRate minZonPriFlo[numZon] + parameter Real minZonPriFlo[numZon]( + final unit=fill("m3/s", numZon), + final quantity=fill("VolumeFlowRate", numZon)) "Minimum expected zone primary flow rate" annotation (Evaluate=true, Dialog(tab="Minimum outdoor airflow rate", group="Nominal conditions")); - parameter Modelica.SIunits.VolumeFlowRate VPriSysMax_flow + parameter Real VPriSysMax_flow( + final unit=fill("m3/s", numZon), + final quantity=fill("VolumeFlowRate", numZon)) "Maximum expected system primary airflow at design stage" annotation (Evaluate=true, Dialog(tab="Minimum outdoor airflow rate", group="Nominal conditions")); @@ -294,44 +351,70 @@ block Controller "Multizone AHU controller that composes subsequences for contro // Dialog(tab="Minimum outdoor airflow rate", group="Advanced")); // ----------- parameters for supply air temperature control ----------- - parameter Modelica.SIunits.Temperature TSupSetMin=285.15 + parameter Real TSupSetMin( + final unit="K", + final displayUnit="degC", + final quantity="ThermodynamicTemperature")=285.15 "Lowest cooling supply air temperature setpoint" annotation (Evaluate=true, Dialog(tab="Supply air temperature", group="Temperature limits")); - parameter Modelica.SIunits.Temperature TSupSetMax=291.15 + parameter Real TSupSetMax( + final unit="K", + final displayUnit="degC", + final quantity="ThermodynamicTemperature")=291.15 "Highest cooling supply air temperature setpoint. It is typically 18 degC (65 degF) in mild and dry climates, 16 degC (60 degF) or lower in humid climates" annotation (Evaluate=true, Dialog(tab="Supply air temperature", group="Temperature limits")); - parameter Modelica.SIunits.Temperature TSupSetDes=286.15 + parameter Real TSupSetDes( + final unit="K", + final displayUnit="degC", + final quantity="ThermodynamicTemperature")=286.15 "Nominal supply air temperature setpoint" annotation (Evaluate=true, Dialog(tab="Supply air temperature", group="Temperature limits")); - parameter Modelica.SIunits.Temperature TOutMin=289.15 + parameter Real TOutMin( + final unit="K", + final displayUnit="degC", + final quantity="ThermodynamicTemperature")=289.15 "Lower value of the outdoor air temperature reset range. Typically value is 16 degC (60 degF)" annotation (Evaluate=true, Dialog(tab="Supply air temperature", group="Temperature limits")); - parameter Modelica.SIunits.Temperature TOutMax=294.15 + parameter Real TOutMax( + final unit="K", + final displayUnit="degC", + final quantity="ThermodynamicTemperature")=294.15 "Higher value of the outdoor air temperature reset range. Typically value is 21 degC (70 degF)" annotation (Evaluate=true, Dialog(tab="Supply air temperature", group="Temperature limits")); - parameter Modelica.SIunits.Temperature iniSetSupTem=supTemSetPoi.maxSet + parameter Real iniSetSupTem( + final unit="K", + final displayUnit="degC", + final quantity="ThermodynamicTemperature")=supTemSetPoi.maxSet "Initial setpoint for supply temperature control" annotation (Evaluate=true, Dialog(tab="Supply air temperature", group="Trim and respond for reseting TSup setpoint")); - parameter Modelica.SIunits.Temperature maxSetSupTem=supTemSetPoi.TSupSetMax + parameter Real maxSetSupTem( + final unit="K", + final displayUnit="degC", + final quantity="ThermodynamicTemperature")=supTemSetPoi.TSupSetMax "Maximum setpoint for supply temperature control" annotation (Evaluate=true, Dialog(tab="Supply air temperature", group="Trim and respond for reseting TSup setpoint")); - parameter Modelica.SIunits.Temperature minSetSupTem=supTemSetPoi.TSupSetDes + parameter Real minSetSupTem( + final unit="K", + final displayUnit="degC", + final quantity="ThermodynamicTemperature")=supTemSetPoi.TSupSetDes "Minimum setpoint for supply temperature control" annotation (Evaluate=true, Dialog(tab="Supply air temperature", group="Trim and respond for reseting TSup setpoint")); - parameter Modelica.SIunits.Time delTimSupTem=600 + parameter Real delTimSupTem( + final unit="s", + final quantity="Time")=600 "Delay timer for supply temperature control" annotation (Evaluate=true, Dialog(tab="Supply air temperature", group="Trim and respond for reseting TSup setpoint")); @@ -341,17 +424,26 @@ block Controller "Multizone AHU controller that composes subsequences for contro annotation (Evaluate=true, Dialog(tab="Supply air temperature", group="Trim and respond for reseting TSup setpoint")); - parameter Modelica.SIunits.TemperatureDifference triAmoSupTem=0.1 + parameter Real triAmoSupTem( + final unit="K", + final displayUnit="K", + final quantity="TemperatureDifference")=0.1 "Trim amount for supply temperature control" annotation (Evaluate=true, Dialog(tab="Supply air temperature", group="Trim and respond for reseting TSup setpoint")); - parameter Modelica.SIunits.TemperatureDifference resAmoSupTem=-0.2 + parameter Real resAmoSupTem( + final unit="K", + final displayUnit="K", + final quantity="TemperatureDifference")=-0.2 "Response amount for supply temperature control" annotation (Evaluate=true, Dialog(tab="Supply air temperature", group="Trim and respond for reseting TSup setpoint")); - parameter Modelica.SIunits.TemperatureDifference maxResSupTem=-0.6 + parameter Real maxResSupTem( + final unit="K", + final displayUnit="K", + final quantity="TemperatureDifference")=-0.6 "Maximum response per time interval for supply temperature control" annotation (Evaluate=true, Dialog(tab="Supply air temperature", group="Trim and respond for reseting TSup setpoint")); @@ -365,13 +457,17 @@ block Controller "Multizone AHU controller that composes subsequences for contro "Gain of controller for supply air temperature signal" annotation (Dialog(group="Supply air temperature")); - parameter Modelica.SIunits.Time TiTSup=600 + parameter Real TiTSup( + final unit="s", + final quantity="Time")=600 "Time constant of integrator block for supply air temperature control signal" annotation (Dialog(group="Supply air temperature", enable=controllerTypeTSup == Buildings.Controls.OBC.CDL.Types.SimpleController.PI or controllerTypeTSup == Buildings.Controls.OBC.CDL.Types.SimpleController.PID)); - parameter Modelica.SIunits.Time TdTSup=0.1 + parameter Real TdTSup( + final unit="s", + final quantity="Time")=0.1 "Time constant of integrator block for supply air temperature control signal" annotation (Dialog(group="Supply air temperature", enable=controllerTypeTSup == Buildings.Controls.OBC.CDL.Types.SimpleController.PD @@ -393,20 +489,23 @@ block Controller "Multizone AHU controller that composes subsequences for contro annotation (Placement(transformation(extent={{-240,130},{-200,170}}))); Buildings.Controls.OBC.CDL.Interfaces.RealInput TMix( final unit="K", + final displayUnit="degC", final quantity = "ThermodynamicTemperature") if use_TMix "Measured mixed air temperature, used for freeze protection if use_TMix=true" annotation (Placement(transformation(extent={{-240,-150},{-200,-110}}))); Buildings.Controls.OBC.CDL.Interfaces.RealInput ducStaPre( final unit="Pa", - displayUnit="Pa") + final displayUnit="Pa") "Measured duct static pressure" annotation (Placement(transformation(extent={{-240,100},{-200,140}}))); Buildings.Controls.OBC.CDL.Interfaces.RealInput TOut( final unit="K", + final displayUnit="degC", final quantity="ThermodynamicTemperature") "Outdoor air temperature" annotation (Placement(transformation(extent={{-240,160},{-200,200}}))); Buildings.Controls.OBC.CDL.Interfaces.RealInput TOutCut( final unit="K", + final displayUnit="degC", final quantity="ThermodynamicTemperature") "OA temperature high limit cutoff. For differential dry bulb temeprature condition use return air temperature measurement" annotation (Placement(transformation(extent={{-240,-30},{-200,10}}))); @@ -421,11 +520,13 @@ block Controller "Multizone AHU controller that composes subsequences for contro annotation (Placement(transformation(extent={{-240,-90},{-200,-50}}))); Buildings.Controls.OBC.CDL.Interfaces.RealInput TSup( final unit="K", + final displayUnit="degC", final quantity="ThermodynamicTemperature") "Measured supply air temperature" annotation (Placement(transformation(extent={{-240,0},{-200,40}}))); Buildings.Controls.OBC.CDL.Interfaces.RealInput TZonHeaSet( final unit="K", + final displayUnit="degC", final quantity="ThermodynamicTemperature") "Zone air temperature heating setpoint" annotation (Placement(transformation(extent={{-240,250},{-200,290}}))); @@ -439,16 +540,19 @@ block Controller "Multizone AHU controller that composes subsequences for contro annotation (Placement(transformation(extent={{-240,70},{-200,110}}))); Buildings.Controls.OBC.CDL.Interfaces.RealInput TZon[numZon]( each final unit="K", + each final displayUnit="degC", each final quantity="ThermodynamicTemperature") "Measured zone air temperature" annotation (Placement(transformation(extent={{-240,50},{-200,90}}))); Buildings.Controls.OBC.CDL.Interfaces.RealInput TDis[numZon]( each final unit="K", + each final displayUnit="degC", each final quantity="ThermodynamicTemperature") "Discharge air temperature" annotation (Placement(transformation(extent={{-240,30},{-200,70}}))); Buildings.Controls.OBC.CDL.Interfaces.RealInput TZonCooSet( final unit="K", + final displayUnit="degC", final quantity="ThermodynamicTemperature") "Zone air temperature cooling setpoint" annotation (Placement(transformation(extent={{-240,220},{-200,260}}))); @@ -472,6 +576,7 @@ block Controller "Multizone AHU controller that composes subsequences for contro Buildings.Controls.OBC.CDL.Interfaces.RealOutput TSupSet( final unit="K", + final displayUnit="degC", final quantity="ThermodynamicTemperature") "Setpoint for supply air temperature" annotation (Placement(transformation(extent={{200,70},{240,110}}))); diff --git a/Buildings/Controls/OBC/ASHRAE/G36_PR1/AHUs/MultiZone/VAV/Economizers/Controller.mo b/Buildings/Controls/OBC/ASHRAE/G36_PR1/AHUs/MultiZone/VAV/Economizers/Controller.mo index e70994e7658..50a3f803792 100644 --- a/Buildings/Controls/OBC/ASHRAE/G36_PR1/AHUs/MultiZone/VAV/Economizers/Controller.mo +++ b/Buildings/Controls/OBC/ASHRAE/G36_PR1/AHUs/MultiZone/VAV/Economizers/Controller.mo @@ -7,16 +7,25 @@ block Controller "Multi zone VAV AHU economizer control sequence" "Set to true if mixed air temperature measurement is enabled"; parameter Boolean use_G36FrePro=false "Set to true to use G36 freeze protection"; - parameter Modelica.SIunits.TemperatureDifference delTOutHis=1 + parameter Real delTOutHis( + final unit="K", + final displayUnit="K", + final quantity="TemperatureDifference")=1 "Delta between the temperature hysteresis high and low limit" annotation (Evaluate=true, Dialog(tab="Advanced", group="Hysteresis")); - parameter Modelica.SIunits.SpecificEnergy delEntHis=1000 + parameter Real delEntHis( + final unit="J/kg", + final quantity="SpecificEnergy")=1000 "Delta between the enthalpy hysteresis high and low limits" annotation (Evaluate=true, Dialog(tab="Advanced",group="Hysteresis",enable=use_enthalpy)); - parameter Modelica.SIunits.Time retDamFulOpeTim=180 + parameter Real retDamFulOpeTim( + final unit="s", + final quantity="Time")=180 "Time period to keep RA damper fully open before releasing it for minimum outdoor airflow control at disable to avoid pressure fluctuations" annotation (Evaluate=true, Dialog(tab="Advanced", group="Delays at disable")); - parameter Modelica.SIunits.Time disDel=15 + parameter Real disDel( + final unit="s", + final quantity="Time")=15 "Short time delay before closing the OA damper at disable to avoid pressure fluctuations" annotation (Evaluate=true, Dialog(tab="Advanced", group="Delays at disable")); @@ -27,12 +36,16 @@ block Controller "Multi zone VAV AHU economizer control sequence" parameter Real kMinOut(final unit="1")=0.05 "Gain of controller for minimum outdoor air" annotation (Dialog(group="Minimum outdoor air")); - parameter Modelica.SIunits.Time TiMinOut=1200 + parameter Real TiMinOut( + final unit="s", + final quantity="Time")=1200 "Time constant of controller for minimum outdoor air intake" annotation (Dialog(group="Minimum outdoor air", enable=controllerTypeMinOut == Buildings.Controls.OBC.CDL.Types.SimpleController.PI or controllerTypeMinOut == Buildings.Controls.OBC.CDL.Types.SimpleController.PID)); - parameter Modelica.SIunits.Time TdMinOut=0.1 + parameter Real TdMinOut( + final unit="s", + final quantity="Time")=0.1 "Time constant of derivative block for minimum outdoor air intake" annotation (Dialog(group="Minimum outdoor air", enable=controllerTypeMinOut == Buildings.Controls.OBC.CDL.Types.SimpleController.PD @@ -43,28 +56,38 @@ block Controller "Multi zone VAV AHU economizer control sequence" "Type of controller" annotation(Dialog(group="Freeze protection", enable=use_TMix)); - parameter Modelica.SIunits.Temperature TFreSet = 279.15 + parameter Real TFreSet( + final unit="K", + final displayUnit="degC", + final quantity="ThermodynamicTemperature")= 279.15 "Lower limit for mixed air temperature for freeze protection, used if use_TMix=true" annotation(Dialog(group="Freeze protection", enable=use_TMix)); parameter Real kFre(final unit="1/K") = 0.1 "Gain for mixed air temperature tracking for freeze protection, used if use_TMix=true" annotation(Dialog(group="Freeze protection", enable=use_TMix)); - parameter Modelica.SIunits.Time TiFre(max=TiMinOut)=120 + parameter Real TiFre( + final unit="s", + final quantity="Time", + final max=TiMinOut)=120 "Time constant of controller for mixed air temperature tracking for freeze protection. Require TiFre < TiMinOut" annotation(Dialog(group="Freeze protection", enable=use_TMix and (controllerTypeFre == Buildings.Controls.OBC.CDL.Types.SimpleController.PI or controllerTypeFre == Buildings.Controls.OBC.CDL.Types.SimpleController.PID))); - parameter Modelica.SIunits.Time TdFre=0.1 - "Time constant of derivative block for freeze protection" - annotation (Dialog(group="Economizer freeze protection", - enable=use_TMix and - (controllerTypeFre == Buildings.Controls.OBC.CDL.Types.SimpleController.PD - or controllerTypeFre == Buildings.Controls.OBC.CDL.Types.SimpleController.PID))); + parameter Real TdFre( + final unit="s", + final quantity="Time")=0.1 + "Time constant of derivative block for freeze protection" + annotation (Dialog(group="Economizer freeze protection", + enable=use_TMix and + (controllerTypeFre == Buildings.Controls.OBC.CDL.Types.SimpleController.PD + or controllerTypeFre == Buildings.Controls.OBC.CDL.Types.SimpleController.PID))); - parameter Modelica.SIunits.Time delta=5 + parameter Real delta( + final unit="s", + final quantity="Time")=5 "Time horizon over which the outdoor air flow measurment is averaged"; parameter Real uHeaMax=-0.25 "Lower limit of controller input when outdoor damper opens for modulation control. Require -1 < uHeaMax < uCooMin < 1." @@ -118,10 +141,12 @@ block Controller "Multi zone VAV AHU economizer control sequence" annotation (Placement(transformation(extent={{-200,20},{-160,60}}))); Buildings.Controls.OBC.CDL.Interfaces.RealInput TOut( final unit="K", + final displayUnit="degC", final quantity="ThermodynamicTemperature") "Outdoor air (OA) temperature" annotation (Placement(transformation(extent={{-200,130},{-160,170}}))); Buildings.Controls.OBC.CDL.Interfaces.RealInput TOutCut( final unit="K", + final displayUnit="degC", final quantity="ThermodynamicTemperature") "OA temperature high limit cutoff. For differential dry bulb temeprature condition use return air temperature measurement" annotation (Placement(transformation(extent={{-200,100},{-160,140}}))); @@ -136,6 +161,7 @@ block Controller "Multi zone VAV AHU economizer control sequence" annotation (Placement(transformation(extent={{-200,50},{-160,90}}))); Buildings.Controls.OBC.CDL.Interfaces.RealInput TMix( final unit="K", + final displayUnit="degC", final quantity = "ThermodynamicTemperature") if use_TMix "Measured mixed air temperature, used for freeze protection" annotation (Placement(transformation(extent={{-200,-70},{-160,-30}}))); @@ -286,12 +312,13 @@ equation annotation (Line(points={{118,46},{98,46}}, color={0,0,127})); connect(TMix, freProTMix.TMix) annotation (Line(points={{-180,-50},{-120,-50},{-120,-60},{60,-60},{60,-10}, - {79,-10}}, + {78,-10}}, color={0,0,127})); connect(freProTMix.yFrePro, retDamMinFre.u1) - annotation (Line(points={{101,-4},{104,-4},{104,46},{118,46}}, color={0,0,127})); + annotation (Line(points={{102,-13},{104,-13},{104,46},{118,46}}, + color={0,0,127})); connect(freProTMix.yFreProInv, outDamMaxFre.u2) - annotation (Line(points={{101,-16},{104,-16},{104,-46},{118,-46}}, + annotation (Line(points={{102,-7},{104,-7},{104,-46},{118,-46}}, color={0,0,127})); connect(freProSta.y, damLim.uFreProSta) annotation (Line(points={{-118,-130},{-90,-130},{-90,6},{-82,6}}, color={255,127,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 53021e55611..d1ae20af3b1 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 @@ -5,22 +5,32 @@ block Enable parameter Boolean use_enthalpy = true "Set to true to evaluate outdoor air enthalpy in addition to temperature" annotation(Dialog(group="Conditional")); - parameter Modelica.SIunits.TemperatureDifference delTOutHis=1 + parameter Real delTOutHis( + final unit="K", + final displayUnit="K", + final quantity="TemperatureDifference")=1 "Delta between the temperature hysteresis high and low limit" annotation(Evaluate=true, Dialog(tab="Advanced", group="Hysteresis")); - parameter Modelica.SIunits.SpecificEnergy delEntHis=1000 + parameter Real delEntHis( + final unit="J/kg", + final quantity="SpecificEnergy")=1000 "Delta between the enthalpy hysteresis high and low limits" annotation(Evaluate=true, Dialog(tab="Advanced", group="Hysteresis", enable = use_enthalpy)); - parameter Modelica.SIunits.Time retDamFulOpeTim=180 + parameter Real retDamFulOpeTim( + final unit="s", + final quantity="Time")=180 "Time period to keep RA damper fully open before releasing it for minimum outdoor airflow control at disable to avoid pressure fluctuations" annotation(Evaluate=true, Dialog(tab="Advanced", group="Delays at disable")); - parameter Modelica.SIunits.Time disDel=15 + parameter Real disDel( + final unit="s", + final quantity="Time")=15 "Short time delay before closing the OA damper at disable to avoid pressure fluctuations" annotation(Evaluate=true, Dialog(tab="Advanced", group="Delays at disable")); Buildings.Controls.OBC.CDL.Interfaces.RealInput TOut( final unit="K", + final displayUnit="degC", final quantity = "ThermodynamicTemperature") "Outdoor air temperature" annotation (Placement(transformation(extent={{-320,250},{-280,290}}), @@ -33,6 +43,7 @@ block Enable iconTransformation(extent={{-140,40},{-100,80}}))); Buildings.Controls.OBC.CDL.Interfaces.RealInput TOutCut( final unit="K", + final displayUnit="degC", final quantity = "ThermodynamicTemperature") "OA temperature high limit cutoff. For differential dry bulb temeprature condition use return air temperature measurement" annotation (Placement(transformation(extent={{-320,210},{-280,250}}), @@ -109,15 +120,21 @@ block Enable Buildings.Controls.OBC.CDL.Logical.TrueFalseHold truFalHol( trueHoldDuration=600) "10 min on/off delay" annotation (Placement(transformation(extent={{0,200},{20,220}}))); - CDL.Logical.And andEnaDis "Logical and that checks freeze protection stage and zone state" + Buildings.Controls.OBC.CDL.Logical.And andEnaDis + "Logical and that checks freeze protection stage and zone state" annotation (Placement(transformation(extent={{40,30},{60,50}}))); protected - final parameter Modelica.SIunits.TemperatureDifference TOutHigLimCutHig = 0 + final parameter Real TOutHigLimCutHig( + final unit="K", + final displayUnit="K", + final quantity="TemperatureDifference")= 0 "Hysteresis high limit cutoff"; final parameter Real TOutHigLimCutLow = TOutHigLimCutHig - delTOutHis "Hysteresis low limit cutoff"; - final parameter Modelica.SIunits.SpecificEnergy hOutHigLimCutHig = 0 + final parameter Real hOutHigLimCutHig( + final unit="J/kg", + final quantity="SpecificEnergy")= 0 "Hysteresis block high limit cutoff"; final parameter Real hOutHigLimCutLow = hOutHigLimCutHig - delEntHis "Hysteresis block low limit cutoff"; 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 0d8273cc2be..1635108e8c5 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 @@ -22,13 +22,17 @@ block Limits final unit="1")=0.05 "Gain of damper limit controller" annotation (Dialog(group="Controller")); - parameter Modelica.SIunits.Time Ti=1200 + parameter Real Ti( + final unit="s", + final quantity="Time")=1200 "Time constant of damper limit controller integrator block" annotation (Dialog(group="Controller", enable=controllerType == Buildings.Controls.OBC.CDL.Types.SimpleController.PI or controllerType == Buildings.Controls.OBC.CDL.Types.SimpleController.PID)); - parameter Modelica.SIunits.Time Td=0.1 + parameter Real Td( + final unit="s", + final quantity="Time")=0.1 "Time constant of damper limit controller derivative block" annotation (Dialog(group="Controller", enable=controllerType == Buildings.Controls.OBC.CDL.Types.SimpleController.PD diff --git a/Buildings/Controls/OBC/ASHRAE/G36_PR1/AHUs/MultiZone/VAV/Economizers/Subsequences/Modulation.mo b/Buildings/Controls/OBC/ASHRAE/G36_PR1/AHUs/MultiZone/VAV/Economizers/Subsequences/Modulation.mo index ac5c733f8db..f2f42eedaa3 100644 --- a/Buildings/Controls/OBC/ASHRAE/G36_PR1/AHUs/MultiZone/VAV/Economizers/Subsequences/Modulation.mo +++ b/Buildings/Controls/OBC/ASHRAE/G36_PR1/AHUs/MultiZone/VAV/Economizers/Subsequences/Modulation.mo @@ -24,7 +24,9 @@ block Modulation final unit="1") = (uMin + uMax)/2 "Minimum loop signal for the RA damper to be fully open" annotation (Evaluate=true, Dialog(tab="Commissioning", group="Controller")); - parameter Modelica.SIunits.Time samplePeriod = 300 + parameter Real samplePeriod( + final unit="s", + final quantity="Time")= 300 "Sample period of component, used to limit the rate of change of the dampers (to avoid quick opening that can result in frost)"; Buildings.Controls.OBC.CDL.Interfaces.RealInput uTSup(final unit="1") diff --git a/Buildings/Controls/OBC/ASHRAE/G36_PR1/AHUs/MultiZone/VAV/Economizers/Subsequences/Validation/Enable_FreProSta.mo b/Buildings/Controls/OBC/ASHRAE/G36_PR1/AHUs/MultiZone/VAV/Economizers/Subsequences/Validation/Enable_FreProSta.mo index fcbca8ef74e..814e693d570 100644 --- a/Buildings/Controls/OBC/ASHRAE/G36_PR1/AHUs/MultiZone/VAV/Economizers/Subsequences/Validation/Enable_FreProSta.mo +++ b/Buildings/Controls/OBC/ASHRAE/G36_PR1/AHUs/MultiZone/VAV/Economizers/Subsequences/Validation/Enable_FreProSta.mo @@ -1,9 +1,14 @@ within Buildings.Controls.OBC.ASHRAE.G36_PR1.AHUs.MultiZone.VAV.Economizers.Subsequences.Validation; model Enable_FreProSta "Model validates economizer disable for heating zone state and activated freeze protection" - parameter Modelica.SIunits.Temperature TOutCutoff=297.15 + parameter Real TOutCutoff( + final unit="K", + final displayUnit="degC", + final quantity="ThermodynamicTemperature")=297.15 "Outdoor temperature high limit cutoff"; - parameter Modelica.SIunits.SpecificEnergy hOutCutoff=65100 + parameter Real hOutCutoff( + final unit="J/kg", + final quantity="SpecificEnergy")=65100 "Outdoor air enthalpy high limit cutoff"; Buildings.Controls.OBC.ASHRAE.G36_PR1.AHUs.MultiZone.VAV.Economizers.Subsequences.Enable @@ -53,33 +58,35 @@ model Enable_FreProSta equation connect(TOutCut.y, enaDis.TOutCut) - annotation (Line(points={{-59,110},{-20,110},{-20,-22},{59,-22}},color={0,0,127})); + annotation (Line(points={{-58,110},{-20,110},{-20,-22},{58,-22}},color={0,0,127})); connect(TOutBelowCutoff.y, enaDis.TOut) - annotation (Line(points={{-59,150},{-10,150},{-10,-20},{59,-20}},color={0,0,127})); + annotation (Line(points={{-58,150},{-10,150},{-10,-20},{58,-20}},color={0,0,127})); connect(hOutBelowCutoff.y, enaDis.hOut) - annotation (Line(points={{-119,90},{-100,90},{-100,60},{-30,60},{-30,-24},{59,-24}}, + annotation (Line(points={{-118,90},{-100,90},{-100,60},{-30,60},{-30,-24},{58, + -24}}, color={0,0,127})); connect(hOutCut.y, enaDis.hOutCut) - annotation (Line(points={{-119,50},{-40,50},{-40,-26},{59,-26}},color={0,0,127})); + annotation (Line(points={{-118,50},{-40,50},{-40,-26},{58,-26}},color={0,0,127})); connect(outDamPosMin.y, enaDis.uOutDamPosMin) - annotation (Line(points={{-119,-140},{-30,-140},{-30,-34},{59,-34}}, + annotation (Line(points={{-118,-140},{-30,-140},{-30,-34},{58,-34}}, color={0,0,127})); connect(outDamPosMax.y, enaDis.uOutDamPosMax) - annotation (Line(points={{-89,-110},{-40,-110},{-40,-32},{59,-32}},color={0,0,127})); + annotation (Line(points={{-88,-110},{-40,-110},{-40,-32},{58,-32}},color={0,0,127})); connect(retDamPosMin.y, enaDis.uRetDamPosMin) - annotation (Line(points={{-89,-80},{48,-80},{48,-40},{59,-40}},color={0,0,127})); + annotation (Line(points={{-88,-80},{48,-80},{48,-40},{58,-40}},color={0,0,127})); connect(retDamPosMax.y, enaDis.uRetDamPosMax) - annotation (Line(points={{-89,-50},{-60,-50},{-60,-38},{59,-38}}, + annotation (Line(points={{-88,-50},{-60,-50},{-60,-38},{58,-38}}, color={0,0,127})); connect(retDamPhyPosMax.y, enaDis.uRetDamPhyPosMax) - annotation (Line(points={{-119,10},{-60,10},{-60,-36},{59,-36}},color={0,0,127})); + annotation (Line(points={{-118,10},{-60,10},{-60,-36},{58,-36}},color={0,0,127})); connect(supFanSta.y, enaDis.uSupFan) - annotation (Line(points={{-119,-30},{-70,-30},{-70,-28},{59,-28}},color={255,0,255})); + annotation (Line(points={{-118,-30},{-70,-30},{-70,-28},{58,-28}},color={255,0,255})); connect(booPul1.y, freProSta1.u) - annotation (Line(points={{1,-150},{4,-150},{4,-150},{8,-150},{8,-150},{18,-150}}, + annotation (Line(points={{2,-150},{4,-150},{4,-150},{8,-150},{8,-150},{18,-150}}, color={255,0,255})); connect(freProSta1.y, enaDis.uFreProSta) - annotation (Line(points={{41,-150},{50,-150},{50,-120},{-20,-120},{-20,-30},{59,-30}}, + annotation (Line(points={{42,-150},{50,-150},{50,-120},{-20,-120},{-20,-30}, + {58,-30}}, color={255,127,0})); annotation ( experiment(StopTime=1800.0, Tolerance=1e-06), diff --git a/Buildings/Controls/OBC/ASHRAE/G36_PR1/AHUs/MultiZone/VAV/Economizers/Subsequences/Validation/Enable_TOut_hOut.mo b/Buildings/Controls/OBC/ASHRAE/G36_PR1/AHUs/MultiZone/VAV/Economizers/Subsequences/Validation/Enable_TOut_hOut.mo index f7c7bccf556..ff0fa5bc5ec 100644 --- a/Buildings/Controls/OBC/ASHRAE/G36_PR1/AHUs/MultiZone/VAV/Economizers/Subsequences/Validation/Enable_TOut_hOut.mo +++ b/Buildings/Controls/OBC/ASHRAE/G36_PR1/AHUs/MultiZone/VAV/Economizers/Subsequences/Validation/Enable_TOut_hOut.mo @@ -33,9 +33,14 @@ model Enable_TOut_hOut annotation (Placement(transformation(extent={{220,-40},{240,-20}}))); protected - final parameter Modelica.SIunits.Temperature TOutCutoff=297.15 + final parameter Real TOutCutoff( + final unit="K", + final displayUnit="degC", + final quantity="ThermodynamicTemperature")=297.15 "Outdoor temperature high limit cutoff"; - final parameter Modelica.SIunits.SpecificEnergy hOutCutoff=65100 + final parameter Real hOutCutoff( + final unit="J/kg", + final quantity="SpecificEnergy")=65100 "Outdoor air enthalpy high limit cutoff"; Buildings.Controls.OBC.CDL.Continuous.Sources.Constant hOutCut( @@ -85,78 +90,86 @@ protected equation connect(TOutCut.y, enaDis.TOutCut) - annotation (Line(points={{-139,90},{-112,90},{-112,-22},{-81,-22}}, color={0,0,127})); + annotation (Line(points={{-138,90},{-112,90},{-112,-22},{-82,-22}}, color={0,0,127})); connect(hOutCut.y, enaDis.hOutCut) - annotation (Line(points={{-219,90},{-186,90},{-186,58},{-138,58},{-138,-26},{-81,-26}}, + annotation (Line(points={{-218,90},{-186,90},{-186,58},{-138,58},{-138,-26}, + {-82,-26}}, color={0,0,127})); connect(freProSta.y, enaDis.uFreProSta) - annotation (Line(points={{-179,30},{-120,30},{-120,-30},{-81,-30}}, color={255,127,0})); + annotation (Line(points={{-178,30},{-120,30},{-120,-30},{-82,-30}}, color={255,127,0})); connect(outDamPosMax.y, enaDis.uOutDamPosMax) - annotation (Line(points={{-219,-70},{-150,-70},{-150,-32},{-81,-32}}, color={0,0,127})); + annotation (Line(points={{-218,-70},{-150,-70},{-150,-32},{-82,-32}}, color={0,0,127})); connect(outDamPosMin.y, enaDis.uOutDamPosMin) - annotation (Line(points={{-219,-110},{-210,-110},{-210,-60},{-140,-60},{-140,-34},{-81,-34}}, color={0,0,127})); + annotation (Line(points={{-218,-110},{-210,-110},{-210,-60},{-140,-60},{-140, + -34},{-82,-34}}, color={0,0,127})); connect(retDamPhyPosMax.y, enaDis.uRetDamPhyPosMax) - annotation (Line(points={{-139,-110},{-110,-110},{-110,-36},{-81,-36}}, color={0,0,127})); + annotation (Line(points={{-138,-110},{-110,-110},{-110,-36},{-82,-36}}, color={0,0,127})); connect(retDamPosMax.y, enaDis.uRetDamPosMax) - annotation (Line(points={{-139,-150},{-106,-150},{-106,-38},{-81,-38}}, color={0,0,127})); + annotation (Line(points={{-138,-150},{-106,-150},{-106,-38},{-82,-38}}, color={0,0,127})); connect(retDamPosMin.y, enaDis.uRetDamPosMin) - annotation (Line(points={{-139,-190},{-100,-190},{-100,-40},{-81,-40}}, color={0,0,127})); + annotation (Line(points={{-138,-190},{-100,-190},{-100,-40},{-82,-40}}, color={0,0,127})); connect(TOutCut1.y, enaDis1.TOutCut) - annotation (Line(points={{21,90},{30,90},{30,-22},{79,-22}}, color={0,0,127})); + annotation (Line(points={{22,90},{30,90},{30,-22},{78,-22}}, color={0,0,127})); connect(hOutCut1.y, enaDis1.hOutCut) - annotation (Line(points={{-19,50},{10,50},{10,-26},{79,-26}}, color={0,0,127})); + annotation (Line(points={{-18,50},{10,50},{10,-26},{78,-26}}, color={0,0,127})); connect(hOutBelowCutoff.y, enaDis.hOut) - annotation (Line(points={{-219,128},{-180,128},{-180,66},{-130,66},{-130,-24},{-81,-24}}, + annotation (Line(points={{-218,128},{-180,128},{-180,66},{-130,66},{-130,-24}, + {-82,-24}}, color={0,0,127})); connect(TOutBelowCutoff.y, enaDis1.TOut) - annotation (Line(points={{61,90},{70,90},{70,-20},{79,-20},{79,-20}}, color={0,0,127})); + annotation (Line(points={{62,90},{70,90},{70,-20},{78,-20},{78,-20}}, color={0,0,127})); connect(booPul.y, TOut.u) - annotation (Line(points={{-179,160},{-162,160}}, color={255,0,255})); + annotation (Line(points={{-178,160},{-162,160}}, color={255,0,255})); connect(TOut.y, enaDis.TOut) - annotation (Line(points={{-139,160},{-110,160},{-110,-20},{-81,-20}}, color={0,0,127})); + annotation (Line(points={{-138,160},{-110,160},{-110,-20},{-82,-20}}, color={0,0,127})); connect(booPul1.y, hOut.u) - annotation (Line(points={{-59,90},{-50,90},{-42,90}}, color={255,0,255})); + annotation (Line(points={{-58,90},{-58,90},{-42,90}}, color={255,0,255})); connect(hOut.y, enaDis1.hOut) - annotation (Line(points={{-19,90},{-10,90},{-10,60},{20,60},{20,-24},{79,-24}}, color={0,0,127})); + annotation (Line(points={{-18,90},{-10,90},{-10,60},{20,60},{20,-24},{78,-24}}, color={0,0,127})); connect(freProSta.y, enaDis1.uFreProSta) - annotation (Line(points={{-179,30},{-46,30},{-46,-30},{79,-30}}, color={255,127,0})); + annotation (Line(points={{-178,30},{-46,30},{-46,-30},{78,-30}}, color={255,127,0})); connect(outDamPosMax.y, enaDis1.uOutDamPosMax) - annotation (Line(points={{-219,-70},{8,-70},{8,-32},{79,-32}}, color={0,0,127})); + annotation (Line(points={{-218,-70},{8,-70},{8,-32},{78,-32}}, color={0,0,127})); connect(outDamPosMin.y, enaDis1.uOutDamPosMin) - annotation (Line(points={{-219,-110},{-190,-110},{-190,-64},{12,-64},{12,-34},{79,-34}}, + annotation (Line(points={{-218,-110},{-190,-110},{-190,-64},{12,-64},{12,-34}, + {78,-34}}, color={0,0,127})); connect(retDamPhyPosMax.y, enaDis1.uRetDamPhyPosMax) - annotation (Line(points={{-139,-110},{16,-110},{16,-36},{79,-36}},color={0,0,127})); + annotation (Line(points={{-138,-110},{16,-110},{16,-36},{78,-36}},color={0,0,127})); connect(retDamPosMax.y, enaDis1.uRetDamPosMax) - annotation (Line(points={{-139,-150},{20,-150},{20,-38},{79,-38}},color={0,0,127})); + annotation (Line(points={{-138,-150},{20,-150},{20,-38},{78,-38}},color={0,0,127})); connect(retDamPosMin.y, enaDis1.uRetDamPosMin) - annotation (Line(points={{-139,-190},{30,-190},{30,-40},{79,-40}},color={0,0,127})); + annotation (Line(points={{-138,-190},{30,-190},{30,-40},{78,-40}},color={0,0,127})); connect(TOut.y, enaDis2.TOut) - annotation (Line(points={{-139,160},{200,160},{200,-20},{219,-20}},color={0,0,127})); + annotation (Line(points={{-138,160},{200,160},{200,-20},{218,-20}},color={0,0,127})); connect(TOutCut.y, enaDis2.TOutCut) - annotation (Line(points={{-139,90},{-120,90},{-120,120},{188,120},{188,-22},{219,-22}}, + annotation (Line(points={{-138,90},{-120,90},{-120,120},{188,120},{188,-22}, + {218,-22}}, color={0,0,127})); connect(freProSta.y, enaDis2.uFreProSta) - annotation (Line(points={{-179,30},{170,30},{170,-30},{219,-30}}, color={255,127,0})); + annotation (Line(points={{-178,30},{170,30},{170,-30},{218,-30}}, color={255,127,0})); connect(outDamPosMax.y, enaDis2.uOutDamPosMax) - annotation (Line(points={{-219,-70},{178,-70},{178,-32},{219,-32}}, color={0,0,127})); + annotation (Line(points={{-218,-70},{178,-70},{178,-32},{218,-32}}, color={0,0,127})); connect(outDamPosMin.y, enaDis2.uOutDamPosMin) - annotation (Line(points={{-219,-110},{-180,-110},{-180,-70},{188,-70}, - {188,-34},{219,-34}}, color={0,0,127})); + annotation (Line(points={{-218,-110},{-180,-110},{-180,-70},{188,-70},{188,-34}, + {218,-34}}, color={0,0,127})); connect(retDamPhyPosMax.y, enaDis2.uRetDamPhyPosMax) - annotation (Line(points={{-139,-110},{192,-110},{192,-36},{219,-36}}, color={0,0,127})); + annotation (Line(points={{-138,-110},{192,-110},{192,-36},{218,-36}}, color={0,0,127})); connect(retDamPosMax.y, enaDis2.uRetDamPosMax) - annotation (Line(points={{-139,-150},{196,-150},{196,-38},{219,-38}}, color={0,0,127})); + annotation (Line(points={{-138,-150},{196,-150},{196,-38},{218,-38}}, color={0,0,127})); connect(retDamPosMin.y, enaDis2.uRetDamPosMin) - annotation (Line(points={{-139,-190},{198,-190},{198,-40},{219,-40}}, color={0,0,127})); + annotation (Line(points={{-138,-190},{198,-190},{198,-40},{218,-40}}, color={0,0,127})); connect(supFanSta.y, enaDis.uSupFan) - annotation (Line(points={{-179,-32},{-160,-32},{-160,-28},{-80,-28},{-80,-28},{-81,-28}}, + annotation (Line(points={{-178,-32},{-160,-32},{-160,-28},{-80,-28},{-80,-28}, + {-82,-28}}, color={255,0,255})); connect(supFanSta.y, enaDis1.uSupFan) - annotation (Line(points={{-179,-32},{-160,-32},{-160,-12},{-20,-12},{-20,-28},{79,-28}}, + annotation (Line(points={{-178,-32},{-160,-32},{-160,-12},{-20,-12},{-20,-28}, + {78,-28}}, color={255,0,255})); connect(supFanSta.y, enaDis2.uSupFan) - annotation (Line(points={{-179,-32},{-160,-32},{-160,-12},{140,-12},{140,-28},{219,-28}}, + annotation (Line(points={{-178,-32},{-160,-32},{-160,-12},{140,-12},{140,-28}, + {218,-28}}, color={255,0,255})); annotation ( diff --git a/Buildings/Controls/OBC/ASHRAE/G36_PR1/AHUs/MultiZone/VAV/Economizers/Subsequences/Validation/Limits_LoopDisable.mo b/Buildings/Controls/OBC/ASHRAE/G36_PR1/AHUs/MultiZone/VAV/Economizers/Subsequences/Validation/Limits_LoopDisable.mo index d3549d79d57..3fa43e8a629 100644 --- a/Buildings/Controls/OBC/ASHRAE/G36_PR1/AHUs/MultiZone/VAV/Economizers/Subsequences/Validation/Limits_LoopDisable.mo +++ b/Buildings/Controls/OBC/ASHRAE/G36_PR1/AHUs/MultiZone/VAV/Economizers/Subsequences/Validation/Limits_LoopDisable.mo @@ -64,11 +64,17 @@ model Limits_LoopDisable annotation (Placement(transformation(extent={{160,-20},{180,0}}))); protected - final parameter Modelica.SIunits.VolumeFlowRate VOutSet_flow=0.71 + final parameter Real VOutSet_flow( + final unit="m3/s", + final quantity="VolumeFlowRate")=0.71 "Example volumetric airflow setpoint, 15cfm/occupant, 100 occupants"; - final parameter Modelica.SIunits.VolumeFlowRate minVOutSet_flow=0.61 + final parameter Real minVOutSet_flow( + final unit="m3/s", + final quantity="VolumeFlowRate")=0.61 "Volumetric airflow sensor output, minimum value in the example"; - final parameter Modelica.SIunits.VolumeFlowRate incVOutSet_flow=0.2 + final parameter Real incVOutSet_flow( + final unit="m3/s", + final quantity="VolumeFlowRate")=0.2 "Maximum increase in airflow volume during the example simulation"; Buildings.Controls.OBC.CDL.Integers.Sources.Constant freProSta( @@ -95,36 +101,36 @@ protected annotation (Placement(transformation(extent={{80,-60},{100,-40}}))); equation - connect(VOut_flow.y, damLim.VOut_flow_normalized) annotation (Line(points={{-179, - 70},{-140,70},{-140,-2},{-121,-2}}, color={0,0,127})); + connect(VOut_flow.y, damLim.VOut_flow_normalized) annotation (Line(points={{-178,70}, + {-140,70},{-140,-6},{-122,-6}}, color={0,0,127})); connect(VOutMinSet_flow.y, damLim.VOutMinSet_flow_normalized) annotation ( - Line(points={{-179,30},{-150,30},{-150,-5},{-121,-5}}, color={0,0,127})); + Line(points={{-178,30},{-150,30},{-150,-2},{-122,-2}}, color={0,0,127})); connect(fanSta.y, damLim.uSupFan) - annotation (Line(points={{-179,-10},{-160,-10},{-121,-10}}, color={255,0,255})); + annotation (Line(points={{-178,-10},{-178,-10},{-122,-10}}, color={255,0,255})); connect(freProSta.y, damLim.uFreProSta) - annotation (Line(points={{-179,-90},{-140,-90},{-140,-18},{-121,-18}}, color={255,127,0})); - connect(VOut1_flow.y, damLim1.VOut_flow_normalized) annotation (Line(points={ - {-39,70},{0,70},{0,-2},{19,-2}}, color={0,0,127})); + annotation (Line(points={{-178,-90},{-140,-90},{-140,-14},{-122,-14}}, color={255,127,0})); + connect(VOut1_flow.y, damLim1.VOut_flow_normalized) annotation (Line(points={{-38,70}, + {0,70},{0,-6},{18,-6}}, color={0,0,127})); connect(VOutMinSet1_flow.y, damLim1.VOutMinSet_flow_normalized) annotation ( - Line(points={{-39,30},{-10,30},{-10,-5},{19,-5}}, color={0,0,127})); + Line(points={{-38,30},{-10,30},{-10,-2},{18,-2}}, color={0,0,127})); connect(fanStatus1.y, damLim1.uSupFan) - annotation (Line(points={{-39,-10},{19,-10}}, color={255,0,255})); + annotation (Line(points={{-38,-10},{18,-10}}, color={255,0,255})); connect(freProSta1.y, damLim1.uFreProSta) - annotation (Line(points={{-39,-90},{0,-90},{0,-18},{19,-18}}, color={255,127,0})); + annotation (Line(points={{-38,-90},{0,-90},{0,-14},{18,-14}}, color={255,127,0})); connect(VOut2_flow.y, damLim2.VOut_flow_normalized) - annotation (Line(points={{101,70},{140,70},{140,-2},{159,-2}}, color={0,0,127})); + annotation (Line(points={{102,70},{140,70},{140,-6},{158,-6}}, color={0,0,127})); connect(VOutMinSet2_flow.y, damLim2.VOutMinSet_flow_normalized) - annotation (Line(points={{101,30},{130,30},{130,-5},{159,-5}}, color={0,0,127})); + annotation (Line(points={{102,30},{130,30},{130,-2},{158,-2}}, color={0,0,127})); connect(fanStatus2.y, damLim2.uSupFan) - annotation (Line(points={{101,-10},{159,-10}}, color={255,0,255})); + annotation (Line(points={{102,-10},{158,-10}}, color={255,0,255})); connect(freProSta2.y, damLim2.uFreProSta) - annotation (Line(points={{101,-90},{140,-90},{140,-18},{159,-18}},color={255,127,0})); + annotation (Line(points={{102,-90},{140,-90},{140,-14},{158,-14}},color={255,127,0})); connect(opeMod.y, damLim.uOpeMod) - annotation (Line(points={{-179,-50},{-150,-50},{-150,-15},{-121,-15}}, color={255,127,0})); + annotation (Line(points={{-178,-50},{-150,-50},{-150,-18},{-122,-18}}, color={255,127,0})); connect(opeMod1.y, damLim1.uOpeMod) - annotation (Line(points={{-39,-50},{-10,-50},{-10,-15},{19,-15}}, color={255,127,0})); + annotation (Line(points={{-38,-50},{-10,-50},{-10,-18},{18,-18}}, color={255,127,0})); connect(opeMod2.y, damLim2.uOpeMod) - annotation (Line(points={{101,-50},{130,-50},{130,-15},{159,-15}}, color={255,127,0})); + annotation (Line(points={{102,-50},{130,-50},{130,-18},{158,-18}}, color={255,127,0})); annotation ( experiment(StopTime=1800.0, Tolerance=1e-06), diff --git a/Buildings/Controls/OBC/ASHRAE/G36_PR1/AHUs/MultiZone/VAV/Economizers/Subsequences/Validation/Limits_VOut_flow.mo b/Buildings/Controls/OBC/ASHRAE/G36_PR1/AHUs/MultiZone/VAV/Economizers/Subsequences/Validation/Limits_VOut_flow.mo index 508852c506c..e5871d0c8ad 100644 --- a/Buildings/Controls/OBC/ASHRAE/G36_PR1/AHUs/MultiZone/VAV/Economizers/Subsequences/Validation/Limits_VOut_flow.mo +++ b/Buildings/Controls/OBC/ASHRAE/G36_PR1/AHUs/MultiZone/VAV/Economizers/Subsequences/Validation/Limits_VOut_flow.mo @@ -19,11 +19,17 @@ model Limits_VOut_flow annotation (Placement(transformation(extent={{20,-10},{40,10}}))); protected - parameter Modelica.SIunits.VolumeFlowRate minVOutSet_flow=0.71 + parameter Real minVOutSet_flow( + final unit="m3/s", + final quantity="VolumeFlowRate")=0.71 "Example volumetric airflow setpoint, 15cfm/occupant, 100 occupants"; - parameter Modelica.SIunits.VolumeFlowRate VOutMin_flow=0.61 + parameter Real VOutMin_flow( + final unit="m3/s", + final quantity="VolumeFlowRate")=0.61 "Minimal measured volumetric airflow"; - parameter Modelica.SIunits.VolumeFlowRate incVOutSet_flow=(minVOutSet_flow-VOutMin_flow)*2 + parameter Real incVOutSet_flow( + final unit="m3/s", + final quantity="VolumeFlowRate")=(minVOutSet_flow-VOutMin_flow)*2 "Maximum volumetric airflow increase during the example simulation"; Buildings.Controls.OBC.CDL.Logical.Sources.Constant fanStatus(k=true) "Fan is on" @@ -39,15 +45,15 @@ protected equation connect(VOut_flow.y, damLim.VOut_flow_normalized) - annotation (Line(points={{-39,80},{0,80},{0,8},{19,8}}, color={0,0,127})); + annotation (Line(points={{-38,80},{0,80},{0,4},{18,4}}, color={0,0,127})); connect(VOutMinSet_flow.y, damLim.VOutMinSet_flow_normalized) annotation ( - Line(points={{-39,40},{-10,40},{-10,5},{19,5}}, color={0,0,127})); + Line(points={{-38,40},{-10,40},{-10,8},{18,8}}, color={0,0,127})); connect(fanStatus.y, damLim.uSupFan) - annotation (Line(points={{-39,0},{19,0}}, color={255,0,255})); + annotation (Line(points={{-38,0},{18,0}}, color={255,0,255})); connect(freProSta.y, damLim.uFreProSta) - annotation (Line(points={{-39,-80},{0,-80},{0,-8},{19,-8}}, color={255,127,0})); + annotation (Line(points={{-38,-80},{0,-80},{0,-4},{18,-4}}, color={255,127,0})); connect(operationMode.y, damLim.uOpeMod) - annotation (Line(points={{-39,-40},{-10,-40},{-10,-5},{19,-5}}, color={255,127,0})); + annotation (Line(points={{-38,-40},{-10,-40},{-10,-8},{18,-8}}, color={255,127,0})); annotation ( experiment(StopTime=1800.0, Tolerance=1e-06), __Dymola_Commands(file="modelica://Buildings/Resources/Scripts/Dymola/Controls/OBC/ASHRAE/G36_PR1/AHUs/MultiZone/VAV/Economizers/Subsequences/Validation/Limits_VOut_flow.mos" diff --git a/Buildings/Controls/OBC/ASHRAE/G36_PR1/AHUs/MultiZone/VAV/Economizers/Validation/Controller_Disable.mo b/Buildings/Controls/OBC/ASHRAE/G36_PR1/AHUs/MultiZone/VAV/Economizers/Validation/Controller_Disable.mo index 4cbc2f79486..b442089085f 100644 --- a/Buildings/Controls/OBC/ASHRAE/G36_PR1/AHUs/MultiZone/VAV/Economizers/Validation/Controller_Disable.mo +++ b/Buildings/Controls/OBC/ASHRAE/G36_PR1/AHUs/MultiZone/VAV/Economizers/Validation/Controller_Disable.mo @@ -35,16 +35,26 @@ model Controller_Disable annotation (Placement(transformation(extent={{160,-60},{180,-40}}))); protected - final parameter Modelica.SIunits.Temperature TOutCutoff=297.15 + final parameter Real TOutCutoff( + final unit="K", + final displayUnit="degC", + final quantity="ThermodynamicTemperature")=297.15 "Outdoor temperature high limit cutoff"; - final parameter Modelica.SIunits.SpecificEnergy hOutCutoff=65100 + final parameter Real hOutCutoff( + final unit="J/kg", + final quantity="SpecificEnergy")=65100 "Outdoor air enthalpy high limit cutoff"; - final parameter Modelica.SIunits.VolumeFlowRate minVOutSet_flow=0.71 + final parameter Real minVOutSet_flow( + final unit="m3/s", + final quantity="VolumeFlowRate")=0.71 "Example volumetric airflow setpoint, 15cfm/occupant, 100 occupants"; - final parameter Modelica.SIunits.VolumeFlowRate VOutMin_flow=0.61 + final parameter Real VOutMin_flow( + final unit="m3/s", + final quantity="VolumeFlowRate")=0.61 "Minimal measured volumetric airflow"; - final parameter Modelica.SIunits.VolumeFlowRate incVOutSet_flow=( - minVOutSet_flow - VOutMin_flow)*2.2 + final parameter Real incVOutSet_flow( + final unit="m3/s", + final quantity="VolumeFlowRate")=(minVOutSet_flow - VOutMin_flow)*2.2 "Maximum volumetric airflow increase during the example simulation"; Buildings.Controls.OBC.CDL.Logical.Sources.Constant fanSta(final k=true) @@ -96,71 +106,73 @@ protected annotation (Placement(transformation(extent={{90,-98},{110,-80}}))); equation - connect(fanSta.y, economizer.uSupFan) annotation (Line(points={{-19,-10},{0,-10}, - {0,5.625},{19.375,5.625}}, color={255,0,255})); - connect(freProSta.y, economizer.uFreProSta) annotation (Line(points={{-59,-100}, - {-10,-100},{-10,0.625},{19.375,0.625}}, color={255, + connect(fanSta.y, economizer.uSupFan) annotation (Line(points={{-18,-10},{0,-10}, + {0,5},{18.75,5}}, color={255,0,255})); + connect(freProSta.y, economizer.uFreProSta) annotation (Line(points={{-58,-100}, + {-10,-100},{-10,0.625},{18.75,0.625}}, color={255, 127,0})); - connect(TOutBelowCutoff.y, economizer.TOut) annotation (Line(points={{-99,110}, - {0,110},{0,19.375},{19.375,19.375}}, color={0,0,127})); - connect(TOutCut1.y, economizer.TOutCut) annotation (Line(points={{-99,70},{-2, - 70},{-2,18.125},{19.375,18.125}}, color={0,0,127})); - connect(hOutBelowCutoff.y, economizer.hOut) annotation (Line(points={{-99,20}, - {-80,20},{-80,16},{19.375,16},{19.375,16.875}}, color={0,0,127})); - connect(hOutCut.y, economizer.hOutCut) annotation (Line(points={{-99,-20},{-90, - -20},{-90,15},{19.375,15}}, color={0,0,127})); - connect(VOut_flow.y, economizer.VOut_flow_normalized) annotation (Line(points= - {{-19,90},{-8,90},{-8,11.25},{19.375,11.25}}, color={0,0,127})); + connect(TOutBelowCutoff.y, economizer.TOut) annotation (Line(points={{-98,110}, + {0,110},{0,19.375},{18.75,19.375}}, color={0,0,127})); + connect(TOutCut1.y, economizer.TOutCut) annotation (Line(points={{-98,70},{-2, + 70},{-2,17.5},{18.75,17.5}}, color={0,0,127})); + connect(hOutBelowCutoff.y, economizer.hOut) annotation (Line(points={{-98,20}, + {-80,20},{-80,16},{18.75,16},{18.75,15.625}}, color={0,0,127})); + connect(hOutCut.y, economizer.hOutCut) annotation (Line(points={{-98,-20},{-90, + -20},{-90,14.375},{18.75,14.375}}, color={0,0,127})); + connect(VOut_flow.y, economizer.VOut_flow_normalized) annotation (Line(points={{-18,90}, + {-8,90},{-8,10.625},{18.75,10.625}}, color={0,0,127})); connect(VOutMinSet_flow.y, economizer.VOutMinSet_flow_normalized) annotation ( - Line(points={{-19,50},{-10,50},{-10,10},{19.375,10}}, color={0,0,127})); - connect(TOutCut1.y, economizer1.TOutCut) annotation (Line(points={{-99,70},{ - 74,70},{74,-1.875},{99.375,-1.875}}, color={0,0,127})); - connect(TOutBelowCutoff.y, economizer1.TOut) annotation (Line(points={{-99, - 110},{80,110},{80,-0.625},{99.375,-0.625}}, color={0,0,127})); - connect(hOutCut.y, economizer1.hOutCut) annotation (Line(points={{-99,-20},{-90, - -20},{-90,-28},{76,-28},{76,-5},{99.375,-5}}, color={0,0,127})); - connect(hOutBelowCutoff.y, economizer1.hOut) annotation (Line(points={{-99,20}, - {-80,20},{-80,-26},{74,-26},{74,-3.125},{99.375,-3.125}}, color={0,0, + Line(points={{-18,50},{-10,50},{-10,8.75},{18.75,8.75}}, + color={0,0,127})); + connect(TOutCut1.y, economizer1.TOutCut) annotation (Line(points={{-98,70},{74, + 70},{74,-2.5},{98.75,-2.5}}, color={0,0,127})); + connect(TOutBelowCutoff.y, economizer1.TOut) annotation (Line(points={{-98,110}, + {80,110},{80,-0.625},{98.75,-0.625}}, color={0,0,127})); + connect(hOutCut.y, economizer1.hOutCut) annotation (Line(points={{-98,-20},{-90, + -20},{-90,-28},{76,-28},{76,-5.625},{98.75,-5.625}}, color={0,0,127})); + connect(hOutBelowCutoff.y, economizer1.hOut) annotation (Line(points={{-98,20}, + {-80,20},{-80,-26},{74,-26},{74,-4.375},{98.75,-4.375}}, color={0,0, 127})); connect(VOut_flow.y, economizer1.VOut_flow_normalized) annotation (Line( - points={{-19,90},{78,90},{78,-8.75},{99.375,-8.75}}, color={0,0,127})); + points={{-18,90},{78,90},{78,-9.375},{98.75,-9.375}},color={0,0,127})); connect(VOutMinSet_flow.y, economizer1.VOutMinSet_flow_normalized) - annotation (Line(points={{-19,50},{70,50},{70,-10},{99.375,-10}}, color={0, + annotation (Line(points={{-18,50},{70,50},{70,-11.25},{98.75,-11.25}}, + color={0, 0,127})); - connect(fanSta.y, economizer1.uSupFan) annotation (Line(points={{-19,-10},{0,-10}, - {0,-14.375},{99.375,-14.375}}, color={255,0,255})); - connect(freProSta2.y, economizer1.uFreProSta) annotation (Line(points={{21,-90}, - {40,-90},{40,-32},{80,-32},{80,-19.375},{99.375,-19.375}}, color={255, + connect(fanSta.y, economizer1.uSupFan) annotation (Line(points={{-18,-10},{0,-10}, + {0,-15},{98.75,-15}}, color={255,0,255})); + connect(freProSta2.y, economizer1.uFreProSta) annotation (Line(points={{22,-90}, + {40,-90},{40,-32},{80,-32},{80,-19.375},{98.75,-19.375}}, color={255, 127,0})); - connect(opeMod.y, economizer.uOpeMod) annotation (Line(points={{-59,-70},{-4, - -70},{-4,3.125},{19.375,3.125}}, color={255,127,0})); - connect(opeMod.y, economizer1.uOpeMod) annotation (Line(points={{-59,-70},{-4, - -70},{-4,-16.875},{99.375,-16.875}}, color={255,127,0})); - connect(uTSup.y, economizer.uTSup) annotation (Line(points={{-59,90},{-50,90}, - {-50,13.125},{19.375,13.125}},color={0,0,127})); - connect(uTSup.y, economizer1.uTSup) annotation (Line(points={{-59,90},{-50,90}, - {-50,28},{60,28},{60,-6.875},{99.375,-6.875}}, color={0,0,127})); - connect(TOutBelowCutoff.y, economizer2.TOut) annotation (Line(points={{-99,110}, - {152,110},{152,-40.625},{159.375,-40.625}}, + connect(opeMod.y, economizer.uOpeMod) annotation (Line(points={{-58,-70},{-4,-70}, + {-4,3.125},{18.75,3.125}}, color={255,127,0})); + connect(opeMod.y, economizer1.uOpeMod) annotation (Line(points={{-58,-70},{-4, + -70},{-4,-16.875},{98.75,-16.875}}, color={255,127,0})); + connect(uTSup.y, economizer.uTSup) annotation (Line(points={{-58,90},{-50,90}, + {-50,12.5},{18.75,12.5}}, color={0,0,127})); + connect(uTSup.y, economizer1.uTSup) annotation (Line(points={{-58,90},{-50,90}, + {-50,28},{60,28},{60,-7.5},{98.75,-7.5}}, color={0,0,127})); + connect(TOutBelowCutoff.y, economizer2.TOut) annotation (Line(points={{-98,110}, + {152,110},{152,-40.625},{158.75,-40.625}}, color={0,0,127})); - connect(TOutCut1.y, economizer2.TOutCut) annotation (Line(points={{-99,70},{150, - 70},{150,-41.875},{159.375,-41.875}}, + connect(TOutCut1.y, economizer2.TOutCut) annotation (Line(points={{-98,70},{150, + 70},{150,-42.5},{158.75,-42.5}}, color={0,0,127})); connect(VOut_flow.y, economizer2.VOut_flow_normalized) annotation (Line( - points={{-19,90},{140,90},{140,-48.75},{159.375,-48.75}}, + points={{-18,90},{140,90},{140,-49.375},{158.75,-49.375}}, color={0,0,127})); connect(VOutMinSet_flow.y, economizer2.VOutMinSet_flow_normalized) - annotation (Line(points={{-19,50},{136,50},{136,-50},{159.375,-50}}, + annotation (Line(points={{-18,50},{136,50},{136,-51.25},{158.75,-51.25}}, color={0,0,127})); - connect(uTSup.y, economizer2.uTSup) annotation (Line(points={{-59,90},{-50,90}, - {-50,106},{142,106},{142,-46.875},{159.375,-46.875}}, color={0,0,127})); - connect(fanSta.y, economizer2.uSupFan) annotation (Line(points={{-19,-10},{0,-10}, - {0,-54.375},{159.375,-54.375}}, color={255,0, + connect(uTSup.y, economizer2.uTSup) annotation (Line(points={{-58,90},{-50,90}, + {-50,106},{142,106},{142,-47.5},{158.75,-47.5}}, color={0,0,127})); + connect(fanSta.y, economizer2.uSupFan) annotation (Line(points={{-18,-10},{0,-10}, + {0,-55},{158.75,-55}}, color={255,0, 255})); - connect(opeMod.y, economizer2.uOpeMod) annotation (Line(points={{-59,-70},{-4, - -70},{-4,-56.875},{159.375,-56.875}}, color={255,127,0})); - connect(sin1.y, economizer2.TMix) annotation (Line(points={{111,-89},{136,-89}, - {136,-51.875},{159.375,-51.875}}, color={0,0,127})); + connect(opeMod.y, economizer2.uOpeMod) annotation (Line(points={{-58,-70},{-4, + -70},{-4,-56.875},{158.75,-56.875}}, color={255,127,0})); + connect(sin1.y, economizer2.TMix) annotation (Line(points={{112,-89},{136,-89}, + {136,-53.125},{158.75,-53.125}}, color={0,0,127})); annotation ( experiment(StopTime=1800.0, Tolerance=1e-06), diff --git a/Buildings/Controls/OBC/ASHRAE/G36_PR1/AHUs/MultiZone/VAV/Economizers/Validation/Controller_Mod_DamLim.mo b/Buildings/Controls/OBC/ASHRAE/G36_PR1/AHUs/MultiZone/VAV/Economizers/Validation/Controller_Mod_DamLim.mo index 20e3cdf5e9f..29b52b53906 100644 --- a/Buildings/Controls/OBC/ASHRAE/G36_PR1/AHUs/MultiZone/VAV/Economizers/Validation/Controller_Mod_DamLim.mo +++ b/Buildings/Controls/OBC/ASHRAE/G36_PR1/AHUs/MultiZone/VAV/Economizers/Validation/Controller_Mod_DamLim.mo @@ -16,17 +16,27 @@ model Controller_Mod_DamLim annotation (Placement(transformation(extent={{100,-40},{120,-20}}))); protected - final parameter Modelica.SIunits.Temperature TOutCutoff=297.15 + final parameter Real TOutCutoff( + final unit="K", + final displayUnit="degC", + final quantity="ThermodynamicTemperature")=297.15 "Outdoor temperature high limit cutoff"; - final parameter Modelica.SIunits.SpecificEnergy hOutCutoff=65100 + final parameter Real hOutCutoff( + final unit="J/kg", + final quantity="SpecificEnergy")=65100 "Outdoor air enthalpy high limit cutoff"; - final parameter Modelica.SIunits.VolumeFlowRate minVOutSet_flow=0.71 + final parameter Real minVOutSet_flow( + final unit="m3/s", + final quantity="VolumeFlowRate")=0.71 "Example volumetric airflow setpoint, 15cfm/occupant, 100 occupants"; - final parameter Modelica.SIunits.VolumeFlowRate VOutMin_flow=0.61 + final parameter Real VOutMin_flow( + final unit="m3/s", + final quantity="VolumeFlowRate")=0.61 "Minimal measured volumetric airflow"; - final parameter Modelica.SIunits.VolumeFlowRate incVOutSet_flow=( - minVOutSet_flow - VOutMin_flow)*2.2 + final parameter Real incVOutSet_flow( + final unit="m3/s", + final quantity="VolumeFlowRate")=(minVOutSet_flow - VOutMin_flow)*2.2 "Maximum volumetric airflow increase during the example simulation"; Buildings.Controls.OBC.CDL.Logical.Sources.Constant fanSta(final k=true) @@ -72,47 +82,49 @@ protected annotation (Placement(transformation(extent={{-80,80},{-60,100}}))); equation - connect(fanSta.y, economizer.uSupFan) annotation (Line(points={{-59,-80},{-14, - -80},{-14,5.625},{19.375,5.625}}, color={255,0,255})); - connect(freProSta.y, economizer.uFreProSta) annotation (Line(points={{-59,-120}, - {0,-120},{0,0.625},{19.375,0.625}}, color={255,127,0})); - connect(opeMod.y, economizer.uOpeMod) annotation (Line(points={{-99,-100},{-4, - -100},{-4,3.125},{19.375,3.125}}, color={255,127,0})); - connect(TOutBelowCutoff.y, economizer.TOut) annotation (Line(points={{-99,110}, - {0,110},{0,19.375},{19.375,19.375}}, color={0,0,127})); - connect(TOutCut1.y, economizer.TOutCut) annotation (Line(points={{-99,70},{-10, - 70},{-10,18.125},{19.375,18.125}}, color={0,0,127})); - connect(VOut_flow.y, economizer.VOut_flow_normalized) annotation (Line(points= - {{-19,90},{-8,90},{-8,11.25},{19.375,11.25}}, color={0,0,127})); + connect(fanSta.y, economizer.uSupFan) annotation (Line(points={{-58,-80},{-14, + -80},{-14,5},{18.75,5}}, color={255,0,255})); + connect(freProSta.y, economizer.uFreProSta) annotation (Line(points={{-58,-120}, + {0,-120},{0,0.625},{18.75,0.625}}, color={255,127,0})); + connect(opeMod.y, economizer.uOpeMod) annotation (Line(points={{-98,-100},{-4, + -100},{-4,3.125},{18.75,3.125}}, color={255,127,0})); + connect(TOutBelowCutoff.y, economizer.TOut) annotation (Line(points={{-98,110}, + {0,110},{0,19.375},{18.75,19.375}}, color={0,0,127})); + connect(TOutCut1.y, economizer.TOutCut) annotation (Line(points={{-98,70},{-10, + 70},{-10,17.5},{18.75,17.5}}, color={0,0,127})); + connect(VOut_flow.y, economizer.VOut_flow_normalized) annotation (Line(points={{-18,90}, + {-8,90},{-8,10.625},{18.75,10.625}}, color={0,0,127})); connect(VOutMinSet_flow.y, economizer.VOutMinSet_flow_normalized) annotation ( - Line(points={{-19,50},{-12,50},{-12,10},{19.375,10}}, color={0,0,127})); - connect(TOutBelowCutoff.y, economizer1.TOut) annotation (Line(points={{-99,110}, - {86,110},{86,-20.625},{99.375,-20.625}}, color={0,0,127})); - connect(TOutCut1.y, economizer1.TOutCut) annotation (Line(points={{-99,70},{80, - 70},{80,-21.875},{99.375,-21.875}}, color={0,0,127})); + Line(points={{-18,50},{-12,50},{-12,8.75},{18.75,8.75}}, + color={0,0,127})); + connect(TOutBelowCutoff.y, economizer1.TOut) annotation (Line(points={{-98,110}, + {86,110},{86,-20.625},{98.75,-20.625}}, color={0,0,127})); + connect(TOutCut1.y, economizer1.TOutCut) annotation (Line(points={{-98,70},{80, + 70},{80,-22.5},{98.75,-22.5}}, color={0,0,127})); connect(VOutMinSet_flow.y, economizer1.VOutMinSet_flow_normalized) - annotation (Line(points={{-19,50},{-12,50},{-12,-30},{99.375,-30}}, + annotation (Line(points={{-18,50},{-12,50},{-12,-31.25},{98.75,-31.25}}, color={0,0,127})); - connect(fanSta.y, economizer1.uSupFan) annotation (Line(points={{-59,-80},{-14, - -80},{-14,-34.375},{99.375,-34.375}},color={255,0,255})); - connect(freProSta.y, economizer1.uFreProSta) annotation (Line(points={{-59,-120}, - {0,-120},{0,-39.375},{99.375,-39.375}}, color={255,127,0})); - connect(opeMod.y, economizer1.uOpeMod) annotation (Line(points={{-99,-100},{-4, - -100},{-4,-36.875},{99.375,-36.875}}, color={255,127,0})); - connect(uTSup.y, economizer.uTSup) annotation (Line(points={{-59,90},{-50,90}, - {-50,13.125},{19.375,13.125}}, color={0,0,127})); - connect(uTSup.y, economizer1.uTSup) annotation (Line(points={{-59,90},{-50,90}, - {-50,-26.875},{99.375,-26.875}}, color={0,0,127})); - connect(economizer1.TMix, TMixMea.y) annotation (Line(points={{99.375,-31.875}, - {-20,-31.875},{-20,0},{-59,0}}, color={0,0,127})); - connect(hOutCut.y, economizer.hOutCut) annotation (Line(points={{-99,-20},{-40, - -20},{-40,15},{19.375,15}}, color={0,0,127})); - connect(hOutBelowCutoff.y, economizer.hOut) annotation (Line(points={{-99,20}, - {-40,20},{-40,16.875},{19.375,16.875}}, color={0,0,127})); - connect(TMixMea.y, economizer.TMix) annotation (Line(points={{-59,0},{-20,0}, - {-20,8.125},{19.375,8.125}}, color={0,0,127})); + connect(fanSta.y, economizer1.uSupFan) annotation (Line(points={{-58,-80},{-14, + -80},{-14,-35},{98.75,-35}}, color={255,0,255})); + connect(freProSta.y, economizer1.uFreProSta) annotation (Line(points={{-58,-120}, + {0,-120},{0,-39.375},{98.75,-39.375}}, color={255,127,0})); + connect(opeMod.y, economizer1.uOpeMod) annotation (Line(points={{-98,-100},{-4, + -100},{-4,-36.875},{98.75,-36.875}}, color={255,127,0})); + connect(uTSup.y, economizer.uTSup) annotation (Line(points={{-58,90},{-50,90}, + {-50,12.5},{18.75,12.5}}, color={0,0,127})); + connect(uTSup.y, economizer1.uTSup) annotation (Line(points={{-58,90},{-50,90}, + {-50,-27.5},{98.75,-27.5}}, color={0,0,127})); + connect(economizer1.TMix, TMixMea.y) annotation (Line(points={{98.75,-33.125}, + {-20,-33.125},{-20,0},{-58,0}}, color={0,0,127})); + connect(hOutCut.y, economizer.hOutCut) annotation (Line(points={{-98,-20},{-40, + -20},{-40,14.375},{18.75,14.375}}, + color={0,0,127})); + connect(hOutBelowCutoff.y, economizer.hOut) annotation (Line(points={{-98,20}, + {-40,20},{-40,15.625},{18.75,15.625}}, color={0,0,127})); + connect(TMixMea.y, economizer.TMix) annotation (Line(points={{-58,0},{-20,0},{ + -20,6.875},{18.75,6.875}}, color={0,0,127})); connect(VOut_flow.y, economizer1.VOut_flow_normalized) annotation (Line( - points={{-19,90},{-8,90},{-8,-28.75},{99.375,-28.75}}, color={0,0,127})); + points={{-18,90},{-8,90},{-8,-29.375},{98.75,-29.375}},color={0,0,127})); annotation ( experiment(StopTime=900.0, Tolerance=1e-06), 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 296b1b06846..bf399a28134 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 @@ -2,8 +2,9 @@ within Buildings.Controls.OBC.ASHRAE.G36_PR1.AHUs.MultiZone.VAV.SetPoints; block ExhaustDamper "Control of actuated exhaust air dampers without fans" - parameter Modelica.SIunits.PressureDifference dpBuiSet( - displayUnit="Pa", + parameter Real dpBuiSet( + final unit="Pa", + final quantity="PressureDifference", max=30) = 12 "Building static pressure difference relative to ambient (positive to pressurize the building)"; parameter Real k(min=0, unit="1") = 0.5 diff --git a/Buildings/Controls/OBC/ASHRAE/G36_PR1/AHUs/MultiZone/VAV/SetPoints/OutsideAirFlow.mo b/Buildings/Controls/OBC/ASHRAE/G36_PR1/AHUs/MultiZone/VAV/SetPoints/OutsideAirFlow.mo index bf25d917db6..e49530327ac 100644 --- a/Buildings/Controls/OBC/ASHRAE/G36_PR1/AHUs/MultiZone/VAV/SetPoints/OutsideAirFlow.mo +++ b/Buildings/Controls/OBC/ASHRAE/G36_PR1/AHUs/MultiZone/VAV/SetPoints/OutsideAirFlow.mo @@ -10,12 +10,15 @@ block OutsideAirFlow "Outdoor air rate per unit area" annotation(Dialog(group="Nominal condition")); - parameter Modelica.SIunits.VolumeFlowRate VOutPerPer_flow[numZon]= - fill(2.5e-3, numZon) + parameter Real VOutPerPer_flow[numZon]( + final unit=fill("m3/s", numZon), + final quantity=fill("VolumeFlowRate", numZon))=fill(2.5e-3, numZon) "Outdoor air rate per person" annotation(Dialog(group="Nominal condition")); - parameter Modelica.SIunits.Area AFlo[numZon] + parameter Real AFlo[numZon]( + unit=fill("m2", numZon), + quantity=fill("Area", numZon)) "Floor area of each zone" annotation(Dialog(group="Nominal condition")); @@ -51,7 +54,7 @@ block OutsideAirFlow parameter Real uLow( final unit="K", final displayUnit="K", - final quantity="ThermodynamicTemperature") = -0.5 + final quantity="TemperatureDifference") = -0.5 "If zone space temperature minus supply air temperature is less than uLow, then it should use heating supply air distribution effectiveness" annotation (Dialog(tab="Advanced")); @@ -59,16 +62,20 @@ block OutsideAirFlow parameter Real uHig( final unit="K", final displayUnit="K", - final quantity="ThermodynamicTemperature") = 0.5 + final quantity="TemperatureDifference") = 0.5 "If zone space temperature minus supply air temperature is more than uHig, then it should use cooling supply air distribution effectiveness" annotation (Dialog(tab="Advanced")); - parameter Modelica.SIunits.VolumeFlowRate VPriSysMax_flow + parameter Real VPriSysMax_flow( + final unit="m3/s", + final quantity="VolumeFlowRate") "Maximum expected system primary airflow at design stage" annotation(Dialog(group="Nominal condition")); - parameter Modelica.SIunits.VolumeFlowRate minZonPriFlo[numZon] + parameter Real minZonPriFlo[numZon]( + final unit=fill("m3/s", numZon), + final quantity=fill("VolumeFlowRate", numZon)) "Minimum expected zone primary flow rate" annotation(Dialog(group="Nominal condition")); 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 1e47150befd..e32c2d6e856 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 @@ -2,17 +2,20 @@ within Buildings.Controls.OBC.ASHRAE.G36_PR1.AHUs.MultiZone.VAV.SetPoints; block ReturnFanDirectPressure "Return fan control with direct building pressure control" - parameter Modelica.SIunits.PressureDifference dpBuiSet( - displayUnit="Pa", - max=30) = 12 + parameter Real dpBuiSet( + final unit="Pa", + final quantity="PressureDifference", + final max=30) = 12 "Building static pressure difference relative to ambient (positive to pressurize the building)"; - parameter Modelica.SIunits.PressureDifference dpDisMin( - displayUnit="Pa", + parameter Real dpDisMin( + final unit="Pa", + final quantity="PressureDifference", final min=0, final max=1000) = 2.4 "Minimum return fan discharge static pressure difference setpoint"; - parameter Modelica.SIunits.PressureDifference dpDisMax( - displayUnit="Pa", + parameter Real dpDisMax( + final unit="Pa", + final quantity="PressureDifference", final min=0, final max=1000) = 40 "Maximum return fan discharge static pressure setpoint"; 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 c86d1330d8e..e8a429f7829 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 @@ -13,30 +13,46 @@ block SupplyFan "Block to control multi zone VAV AHU supply fan" parameter Boolean have_airFloMeaSta = false "Check if the AHU has AFMS (Airflow measurement station)" annotation(Dialog(group="System configuration")); - parameter Modelica.SIunits.PressureDifference iniSet(displayUnit="Pa") = 120 + parameter Real iniSet( + final unit="Pa", + final quantity="PressureDifference") = 120 "Initial setpoint" annotation (Dialog(group="Trim and respond for pressure setpoint")); - parameter Modelica.SIunits.PressureDifference minSet(displayUnit="Pa") = 25 + parameter Real minSet( + final unit="Pa", + final quantity="PressureDifference") = 25 "Minimum setpoint" annotation (Dialog(group="Trim and respond for pressure setpoint")); - parameter Modelica.SIunits.PressureDifference maxSet(displayUnit="Pa") + parameter Real maxSet( + final unit="Pa", + final quantity="PressureDifference") "Maximum setpoint" annotation (Dialog(group="Trim and respond for pressure setpoint")); - parameter Modelica.SIunits.Time delTim = 600 + parameter Real delTim( + final unit="s", + final quantity="Time")= 600 "Delay time after which trim and respond is activated" annotation (Dialog(group="Trim and respond for pressure setpoint")); - parameter Modelica.SIunits.Time samplePeriod = 120 "Sample period" + parameter Real samplePeriod( + final unit="s", + final quantity="Time") = 120 "Sample period" annotation (Dialog(group="Trim and respond for pressure setpoint")); parameter Integer numIgnReq = 2 "Number of ignored requests" annotation (Dialog(group="Trim and respond for pressure setpoint")); - parameter Modelica.SIunits.PressureDifference triAmo(displayUnit="Pa") = -12.0 + parameter Real triAmo( + final unit="Pa", + final quantity="PressureDifference") = -12.0 "Trim amount" annotation (Dialog(group="Trim and respond for pressure setpoint")); - parameter Modelica.SIunits.PressureDifference resAmo(displayUnit="Pa") = 15 + parameter Real resAmo( + final unit="Pa", + final quantity="PressureDifference") = 15 "Respond amount (must be opposite in to triAmo)" annotation (Dialog(group="Trim and respond for pressure setpoint")); - parameter Modelica.SIunits.PressureDifference maxRes(displayUnit="Pa") = 32 + parameter Real maxRes( + final unit="Pa", + final quantity="PressureDifference") = 32 "Maximum response per time interval (same sign as resAmo)" annotation (Dialog(group="Trim and respond for pressure setpoint")); parameter Buildings.Controls.OBC.CDL.Types.SimpleController @@ -45,12 +61,18 @@ block SupplyFan "Block to control multi zone VAV AHU supply fan" parameter Real k(final unit="1")=0.1 "Gain of controller, normalized using maxSet" annotation (Dialog(group="Fan PID controller")); - parameter Modelica.SIunits.Time Ti(min=0)=60 + parameter Real Ti( + final unit="s", + final quantity="Time", + min=0)=60 "Time constant of integrator block" annotation (Dialog(group="Fan PID controller", enable=controllerType==Buildings.Controls.OBC.CDL.Types.SimpleController.PI or controllerType==Buildings.Controls.OBC.CDL.Types.SimpleController.PID)); - parameter Modelica.SIunits.Time Td(min=0) = 0.1 + parameter Real Td( + final unit="s", + final quantity="Time", + final min=0) = 0.1 "Time constant of derivative block" annotation (Dialog(group="Fan PID controller", enable=controllerType==Buildings.Controls.OBC.CDL.Types.SimpleController.PD 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 79052d285a7..f7be96913d4 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 @@ -6,30 +6,40 @@ block SupplySignals "Multizone VAV AHU coil valve positions" "Type of controller for supply air temperature signal"; parameter Real kTSup(final unit="1/K")=0.05 "Gain of controller for supply air temperature signal"; - parameter Modelica.SIunits.Time TiTSup=600 + parameter Real TiTSup( + final unit="s", + final quantity="Time")=600 "Time constant of integrator block for supply temperature control signal" annotation(Dialog( enable=controllerType == Buildings.Controls.OBC.CDL.Types.SimpleController.PI or controllerType == Buildings.Controls.OBC.CDL.Types.SimpleController.PID)); - parameter Modelica.SIunits.Time TdTSup=0.1 + parameter Real TdTSup( + final unit="s", + final quantity="Time")=0.1 "Time constant of derivative block for supply temperature control signal" annotation(Dialog(enable=controllerType == Buildings.Controls.OBC.CDL.Types.SimpleController.PD or controllerType == Buildings.Controls.OBC.CDL.Types.SimpleController.PID)); - parameter Real uHeaMax(min=-0.9)=-0.25 + parameter Real uHeaMax( + final min=-0.9, + final unit="1")=-0.25 "Upper limit of controller signal when heating coil is off. Require -1 < uHeaMax < uCooMin < 1."; - parameter Real uCooMin(max=0.9)=0.25 + parameter Real uCooMin( + final max=0.9, + final unit="1")=0.25 "Lower limit of controller signal when cooling coil is off. Require -1 < uHeaMax < uCooMin < 1."; Buildings.Controls.OBC.CDL.Interfaces.RealInput TSup( final unit="K", + final displayUnit="degC", final quantity="ThermodynamicTemperature") "Measured supply air temperature" annotation (Placement(transformation(extent={{-140,-40},{-100,0}}), iconTransformation(extent={{-140,-70},{-100,-30}}))); Buildings.Controls.OBC.CDL.Interfaces.RealInput TSupSet( final unit="K", + final displayUnit="degC", final quantity="ThermodynamicTemperature") "Setpoint for supply air temperature" annotation (Placement(transformation(extent={{-140,10},{-100,50}}), 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 432882f81aa..77c7be4ebaa 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 @@ -2,59 +2,99 @@ within Buildings.Controls.OBC.ASHRAE.G36_PR1.AHUs.MultiZone.VAV.SetPoints; block SupplyTemperature "Supply air temperature setpoint for multi zone system" - parameter Modelica.SIunits.Temperature TSupSetMin = 285.15 + parameter Real TSupSetMin( + final unit="K", + final displayUnit="degC", + final quantity="ThermodynamicTemperature") = 285.15 "Lowest cooling supply air temperature setpoint" annotation (Dialog(group="Temperatures")); - parameter Modelica.SIunits.Temperature TSupSetMax = 291.15 + parameter Real TSupSetMax( + final unit="K", + final displayUnit="degC", + final quantity="ThermodynamicTemperature") = 291.15 "Highest cooling supply air temperature setpoint. It is typically 18 degC (65 degF) in mild and dry climates, 16 degC (60 degF) or lower in humid climates" annotation (Dialog(group="Temperatures")); - parameter Modelica.SIunits.Temperature TSupSetDes = 286.15 + parameter Real TSupSetDes( + final unit="K", + final displayUnit="degC", + final quantity="ThermodynamicTemperature") = 286.15 "Nominal supply air temperature setpoint" annotation (Dialog(group="Temperatures")); - parameter Modelica.SIunits.Temperature TOutMin = 289.15 + parameter Real TOutMin( + final unit="K", + final displayUnit="degC", + final quantity="ThermodynamicTemperature") = 289.15 "Lower value of the outdoor air temperature reset range. Typically value is 16 degC (60 degF)" annotation (Dialog(group="Temperatures")); - parameter Modelica.SIunits.Temperature TOutMax = 294.15 + parameter Real TOutMax( + final unit="K", + final displayUnit="degC", + final quantity="ThermodynamicTemperature") = 294.15 "Higher value of the outdoor air temperature reset range. Typically value is 21 degC (70 degF)" annotation (Dialog(group="Temperatures")); - parameter Modelica.SIunits.Temperature iniSet = maxSet + parameter Real iniSet( + final unit="K", + final displayUnit="degC", + final quantity="ThermodynamicTemperature") = maxSet "Initial setpoint" annotation (Dialog(group="Trim and respond logic")); - parameter Modelica.SIunits.Temperature maxSet = TSupSetMax + parameter Real maxSet( + final unit="K", + final displayUnit="degC", + final quantity="ThermodynamicTemperature") = TSupSetMax "Maximum setpoint" annotation (Dialog(group="Trim and respond logic")); - parameter Modelica.SIunits.Temperature minSet = TSupSetDes + parameter Real minSet( + final unit="K", + final displayUnit="degC", + final quantity="ThermodynamicTemperature") = TSupSetDes "Minimum setpoint" annotation (Dialog(group="Trim and respond logic")); - parameter Modelica.SIunits.Time delTim = 600 + parameter Real delTim( + final unit="s", + final quantity="Time") = 600 "Delay timer" annotation(Dialog(group="Trim and respond logic")); - parameter Modelica.SIunits.Time samplePeriod(min=1E-3) = 120 + parameter Real samplePeriod( + final unit="s", + final quantity="Time", + min=1E-3) = 120 "Sample period of component" annotation(Dialog(group="Trim and respond logic")); parameter Integer numIgnReq = 2 "Number of ignorable requests for TrimResponse logic" annotation(Dialog(group="Trim and respond logic")); - parameter Modelica.SIunits.TemperatureDifference triAmo = 0.1 + parameter Real triAmo( + final unit="K", + final displayUnit="K", + final quantity="TemperatureDifference") = 0.1 "Trim amount" annotation (Dialog(group="Trim and respond logic")); - parameter Modelica.SIunits.TemperatureDifference resAmo = -0.2 + parameter Real resAmo( + final unit="K", + final displayUnit="K", + final quantity="TemperatureDifference") = -0.2 "Response amount" annotation (Dialog(group="Trim and respond logic")); - parameter Modelica.SIunits.TemperatureDifference maxRes = -0.6 + parameter Real maxRes( + final unit="K", + final displayUnit="K", + final quantity="TemperatureDifference") = -0.6 "Maximum response per time interval" annotation (Dialog(group="Trim and respond logic")); Buildings.Controls.OBC.CDL.Interfaces.RealInput TOut( final unit="K", - quantity="ThermodynamicTemperature") + final displayUnit="degC", + final quantity="ThermodynamicTemperature") "Outdoor air temperature" annotation (Placement(transformation(extent={{-180,40},{-140,80}}), iconTransformation(extent={{-140,20},{-100,60}}))); Buildings.Controls.OBC.CDL.Interfaces.RealInput TZonSetAve( final unit="K", - quantity="ThermodynamicTemperature") + final displayUnit="degC", + final quantity="ThermodynamicTemperature") "Average of heating and cooling setpoint" annotation (Placement(transformation(extent={{-180,70},{-140,110}}), iconTransformation(extent={{-140,60},{-100,100}}))); @@ -72,7 +112,8 @@ block SupplyTemperature iconTransformation(extent={{-140,-20},{-100,20}}))); Buildings.Controls.OBC.CDL.Interfaces.RealOutput TSupSet( final unit="K", - quantity="ThermodynamicTemperature") + final displayUnit="degC", + final quantity="ThermodynamicTemperature") "Setpoint for supply air temperature" annotation (Placement(transformation(extent={{140,-20},{180,20}}), iconTransformation(extent={{100,-20},{140,20}}))); @@ -215,7 +256,7 @@ equation annotation (Line(points={{-160,-30},{-120,-30},{-120,38},{-102,38}}, color={255,0,255})); connect(maxSupTemRes.y, lin.f1) - annotation (Line(points={{-79,30},{-60,30},{-60,54},{18,54}}, + annotation (Line(points={{-78,30},{-60,30},{-60,54},{18,54}}, color={0,0,127})); connect(swi3.y, TSupSet) annotation (Line(points={{102,0},{160,0}}, color={0,0,127})); From 306307fc51da6996e0f8d2dc1fc098f2ec1ba79e Mon Sep 17 00:00:00 2001 From: JayHuLBL Date: Fri, 27 Mar 2020 16:17:55 -0700 Subject: [PATCH 02/10] cleaned parameter declarations in package AHUs.SingleZone, #1853 [ci skip] --- .../G36_PR1/AHUs/SingleZone/VAV/Controller.mo | 116 ++++++++++++++---- .../AHUs/SingleZone/VAV/CoolingCoil.mo | 2 + .../SingleZone/VAV/Economizers/Controller.mo | 44 +++++-- .../VAV/Economizers/Subsequences/Enable.mo | 26 +++- .../VAV/Economizers/Subsequences/Limits.mo | 9 +- .../Economizers/Subsequences/Modulation.mo | 10 +- .../Validation/Enable_FreProSta_ZonSta.mo | 9 +- .../Validation/Enable_TOut_hOut.mo | 9 +- .../Subsequences/Validation/Limits_Disable.mo | 54 +++++--- .../Validation/Limits_FanSpe_VOut_flow.mo | 34 +++-- .../Validation/Modulation_TSup.mo | 5 +- .../Validation/Controller_Disable.mo | 115 +++++++++++------ .../Validation/Controller_Mod_DamLim.mo | 94 +++++++++----- .../VAV/SetPoints/OutsideAirFlow.mo | 34 +++-- .../AHUs/SingleZone/VAV/SetPoints/Supply.mo | 16 ++- .../SingleZone/VAV/Validation/CoolingCoil.mo | 5 +- 16 files changed, 409 insertions(+), 173 deletions(-) diff --git a/Buildings/Controls/OBC/ASHRAE/G36_PR1/AHUs/SingleZone/VAV/Controller.mo b/Buildings/Controls/OBC/ASHRAE/G36_PR1/AHUs/SingleZone/VAV/Controller.mo index 18c63361a5b..ad97ff75bbb 100644 --- a/Buildings/Controls/OBC/ASHRAE/G36_PR1/AHUs/SingleZone/VAV/Controller.mo +++ b/Buildings/Controls/OBC/ASHRAE/G36_PR1/AHUs/SingleZone/VAV/Controller.mo @@ -1,18 +1,30 @@ within Buildings.Controls.OBC.ASHRAE.G36_PR1.AHUs.SingleZone.VAV; block Controller "Single Zone AHU controller that composes subsequences for controlling fan speed, economizer, and supply air temperature" - parameter Real TZonHeaOn(final unit="K")=293.15 + parameter Real TZonHeaOn( + final unit="K", + final displayUnit="degC", + final quantity="ThermodynamicTemperature")=293.15 "Heating setpoint during on" - annotation (Dialog(group="Zone setpoints")); - parameter Real TZonHeaOff(final unit="K")=285.15 + annotation (Dialog(group="Zone setpoints")); + parameter Real TZonHeaOff( + final unit="K", + final displayUnit="degC", + final quantity="ThermodynamicTemperature")=285.15 "Heating setpoint during off" - annotation (Dialog(group="Zone setpoints")); - parameter Real TZonCooOn(final unit="K")=297.15 + annotation (Dialog(group="Zone setpoints")); + parameter Real TZonCooOn( + final unit="K", + final displayUnit="degC", + final quantity="ThermodynamicTemperature")=297.15 "Cooling setpoint during on" - annotation (Dialog(group="Zone setpoints")); - parameter Real TZonCooOff(final unit="K")=303.15 + annotation (Dialog(group="Zone setpoints")); + parameter Real TZonCooOff( + final unit="K", + final displayUnit="degC", + final quantity="ThermodynamicTemperature")=303.15 "Cooling setpoint during off" - annotation (Dialog(group="Zone setpoints")); + annotation (Dialog(group="Zone setpoints")); parameter Buildings.Controls.OBC.CDL.Types.SimpleController controllerTypeCoo= Buildings.Controls.OBC.CDL.Types.SimpleController.PI "Type of controller" @@ -20,12 +32,16 @@ block Controller parameter Real kCoo(final unit="1/K") = 0.1 "Gain for cooling control loop signal" annotation(Dialog(group="Cooling loop signal")); - parameter Real TiCoo(final unit="s")=900 + parameter Real TiCoo( + final unit="s", + final quantity="Time")=900 "Time constant of integrator block for cooling control loop signal" annotation(Dialog(group="Cooling loop signal", enable=controllerTypeCoo == Buildings.Controls.OBC.CDL.Types.SimpleController.PI or controllerTypeCoo == Buildings.Controls.OBC.CDL.Types.SimpleController.PID)); - parameter Modelica.SIunits.Time TdCoo=0.1 + parameter Real TdCoo( + final unit="s", + final quantity="Time")=0.1 "Time constant of derivative block for cooling control loop signal" annotation (Dialog(group="Cooling loop signal", enable=controllerTypeCoo == Buildings.Controls.OBC.CDL.Types.SimpleController.PD @@ -38,12 +54,16 @@ block Controller parameter Real kHea(final unit="1/K")=0.1 "Gain for heating control loop signal" annotation(Dialog(group="Heating loop signal")); - parameter Real TiHea(final unit="s")=900 + parameter Real TiHea( + final unit="s", + final quantity="Time")=900 "Time constant of integrator block for heating control loop signal" annotation(Dialog(group="Heating loop signal", enable=controllerTypeHea == Buildings.Controls.OBC.CDL.Types.SimpleController.PI or controllerTypeHea == Buildings.Controls.OBC.CDL.Types.SimpleController.PID)); - parameter Modelica.SIunits.Time TdHea=0.1 + parameter Real TdHea( + final unit="s", + final quantity="Time")=0.1 "Time constant of derivative block for heating control loop signal" annotation (Dialog(group="Heating loop signal", enable=controllerTypeHea == Buildings.Controls.OBC.CDL.Types.SimpleController.PD @@ -56,22 +76,32 @@ block Controller parameter Real kCooCoi(final unit="1/K")=1.0 "Gain for cooling coil control loop signal" annotation(Dialog(group="Cooling coil loop signal")); - parameter Real TiCooCoil(final unit="s")=900 + parameter Real TiCooCoil( + final unit="s", + final quantity="Time")=900 "Time constant of integrator block for cooling coil control loop signal" annotation(Dialog(group="Cooling coil loop signal", enable=controllerTypeCooCoi == Buildings.Controls.OBC.CDL.Types.SimpleController.PI or controllerTypeCooCoi == Buildings.Controls.OBC.CDL.Types.SimpleController.PID)); - parameter Modelica.SIunits.Time TdCooCoil=0.1 + parameter Real TdCooCoil( + final unit="s", + final quantity="Time")=0.1 "Time constant of derivative block for cooling coil control loop signal" annotation (Dialog(group="Cooling coil loop signal", enable=controllerTypeCooCoi == Buildings.Controls.OBC.CDL.Types.SimpleController.PD or controllerTypeCooCoi == Buildings.Controls.OBC.CDL.Types.SimpleController.PID)); - parameter Real TSupSetMax(final unit="K") + parameter Real TSupSetMax( + final unit="K", + final displayUnit="degC", + final quantity="ThermodynamicTemperature") "Maximum supply air temperature for heating" annotation (Evaluate=true, Dialog(tab="VAV Setpoints",group="Temperature limits")); - parameter Real TSupSetMin(final unit="K") + parameter Real TSupSetMin( + final unit="K", + final displayUnit="degC", + final quantity="ThermodynamicTemperature") "Minimum supply air temperature for cooling" annotation (Evaluate=true, Dialog(tab="VAV Setpoints",group="Temperature limits")); @@ -88,10 +118,12 @@ block Controller parameter Real VOutPerAre_flow(final unit="m3/(s.m2)") = 3e-4 "Outdoor air rate per unit area" annotation(Dialog(tab="Outside Air Flow", group="Nominal condition")); - parameter Real VOutPerPer_flow(final unit="m3/s") = 2.5e-3 + parameter Real VOutPerPer_flow( + final unit="m3/s", + final quantity="VolumeFlowRate") = 2.5e-3 "Outdoor air rate per person" annotation(Dialog(tab="Outside Air Flow", group="Nominal condition")); - parameter Real AFlo(final unit="m2") + parameter Real AFlo(final unit="m2", final quantity="Area") "Floor area" annotation(Dialog(tab="Outside Air Flow", group="Nominal condition")); parameter Boolean have_occSen @@ -119,10 +151,15 @@ block Controller parameter Boolean use_G36FrePro=false "Set to true if G36 freeze protection is implemented" annotation(Dialog(tab="Economizer", group="General")); - parameter Modelica.SIunits.TemperatureDifference delTOutHis=1 + parameter Real delTOutHis( + final unit="K", + final displayUnit="K", + final quantity="TemperatureDifference")=1 "Delta between the temperature hysteresis high and low limit" annotation(Dialog(tab="Economizer", group="Advanced")); - parameter Modelica.SIunits.SpecificEnergy delEntHis=1000 + parameter Real delEntHis( + final unit="J/kg", + final quantity="SpecificEnergy")=1000 "Delta between the enthalpy hysteresis high and low limits" annotation(Dialog(tab="Economizer", group="Advanced", enable = use_enthalpy)); parameter Buildings.Controls.OBC.CDL.Types.SimpleController controllerTypeMod= @@ -131,12 +168,16 @@ block Controller annotation(Dialog(tab="Economizer", group="Modulation")); parameter Real kMod(final unit="1/K")=1 "Gain of modulation controller" annotation(Dialog(tab="Economizer", group="Modulation")); - parameter Real TiMod(final unit="s")=300 + parameter Real TiMod( + final unit="s", + final quantity="Time")=300 "Time constant of modulation controller integrator block" annotation (Dialog(tab="Economizer", group="Modulation", enable=controllerTypeMod == Buildings.Controls.OBC.CDL.Types.SimpleController.PI or controllerTypeMod == Buildings.Controls.OBC.CDL.Types.SimpleController.PID)); - parameter Modelica.SIunits.Time TdMod=0.1 + parameter Real TdMod( + final unit="s", + final quantity="Time")=0.1 "Time constant of derivative block for modulation controller" annotation (Dialog(tab="Economizer", group="Modulation", enable=controllerTypeMod == Buildings.Controls.OBC.CDL.Types.SimpleController.PD @@ -161,26 +202,37 @@ block Controller parameter Real kFre(final unit="1/K") = 0.1 "Gain for mixed air temperature tracking for freeze protection, used if use_TMix=true" annotation(Dialog(tab="Economizer", group="Freeze protection", enable=use_TMix)); - parameter Real TiFre(final unit="s")=120 + parameter Real TiFre( + final unit="s", + final quantity="Time")=120 "Time constant of controller for mixed air temperature tracking for freeze protection. Require TiFre < TiMinOut" annotation(Dialog(tab="Economizer", group="Freeze protection", enable=use_TMix and (controllerTypeFre == Buildings.Controls.OBC.CDL.Types.SimpleController.PI or controllerTypeFre == Buildings.Controls.OBC.CDL.Types.SimpleController.PID))); - parameter Modelica.SIunits.Time TdFre=0.1 + parameter Real TdFre( + final unit="s", + final quantity="Time")=0.1 "Time constant of derivative block for freeze protection" annotation (Dialog(tab="Economizer", group="Freeze protection", enable=use_TMix and (controllerTypeFre == Buildings.Controls.OBC.CDL.Types.SimpleController.PD or controllerTypeFre == Buildings.Controls.OBC.CDL.Types.SimpleController.PID))); - parameter Real TFreSet(final unit="K")=277.15 + parameter Real TFreSet( + final unit="K", + final displayUnit="degC", + final quantity="ThermodynamicTemperature")=277.15 "Lower limit for mixed air temperature for freeze protection, used if use_TMix=true" annotation(Dialog(tab="Economizer", group="Freeze protection", enable=use_TMix)); - parameter Real VOutMin_flow(final unit="m3/s")=1.0 + parameter Real VOutMin_flow( + final unit="m3/s", + final quantity="VolumeFlowRate")=1.0 "Calculated minimum outdoor airflow rate" annotation(Evaluate=true, Dialog(tab="Economizer", group="Commissioning")); - parameter Real VOutDes_flow(final unit="m3/s")=2.0 + parameter Real VOutDes_flow( + final unit="m3/s", + final quantity="VolumeFlowRate")=2.0 "Calculated design outdoor airflow rate" annotation(Evaluate=true, Dialog(tab="Economizer", group="Commissioning")); parameter Real yDam_VOutMin_minSpe( @@ -234,6 +286,7 @@ block Controller Buildings.Controls.OBC.CDL.Interfaces.RealInput TOut( final unit="K", + final displayUnit="degC", final quantity = "ThermodynamicTemperature") "Outside air temperature" annotation (Placement(transformation(extent={{-240,220},{-200,260}}), @@ -244,6 +297,7 @@ block Controller iconTransformation(extent={{-240,180},{-200,220}}))); Buildings.Controls.OBC.CDL.Interfaces.RealInput TZon( final unit="K", + final displayUnit="degC", final quantity = "ThermodynamicTemperature") "Measured zone temperatures" annotation (Placement(transformation(extent={{-240,140},{-200,180}}), @@ -254,18 +308,21 @@ block Controller iconTransformation(extent={{-240,100},{-200,140}}))); Buildings.Controls.OBC.CDL.Interfaces.RealInput TCut( final unit="K", + final displayUnit="degC", final quantity="ThermodynamicTemperature") "Economizer high limit cutoff. Fixed dry bulb or differential dry bulb temeprature" annotation (Placement(transformation(extent={{-240,60},{-200,100}}), iconTransformation(extent={{-240,60},{-200,100}}))); Buildings.Controls.OBC.CDL.Interfaces.RealInput TSup( final unit="K", + final displayUnit="degC", final quantity = "ThermodynamicTemperature") "Measured supply air temperature" annotation (Placement(transformation(extent={{-240,20},{-200,60}}), iconTransformation(extent={{-240,20},{-200,60}}))); Buildings.Controls.OBC.CDL.Interfaces.RealInput TMix( final unit="K", + final displayUnit="degC", final quantity = "ThermodynamicTemperature") if use_TMix "Measured mixed air temperature, used for freeze protection if use_TMix is true" annotation (Placement(transformation(extent={{-240,-20},{-200,20}}), @@ -291,6 +348,7 @@ block Controller iconTransformation(extent={{-240,-180},{-200,-140}}))); Buildings.Controls.OBC.CDL.Interfaces.RealInput TRet( final unit="K", + final displayUnit="degC", final quantity="ThermodynamicTemperature") if use_fixed_plus_differential_drybulb "Used only for fixed plus differential dry bulb temperature high limit cutoff" @@ -303,12 +361,14 @@ block Controller iconTransformation(extent={{-240,-260},{-200,-220}}))); Buildings.Controls.OBC.CDL.Interfaces.RealOutput TSupHeaEco( final unit="K", + final displayUnit="degC", final quantity = "ThermodynamicTemperature") "Temperature setpoint for heating coil and for economizer" annotation (Placement(transformation(extent={{200,230},{220,250}}), iconTransformation(extent={{200,200},{240,240}}))); Buildings.Controls.OBC.CDL.Interfaces.RealOutput TSupCoo( final unit="K", + final displayUnit="degC", final quantity = "ThermodynamicTemperature") "Cooling supply air temperature setpoint" annotation (Placement(transformation(extent={{200,170},{220,190}}), @@ -321,12 +381,14 @@ block Controller iconTransformation(extent={{200,100},{240,140}}))); Buildings.Controls.OBC.CDL.Interfaces.RealOutput TZonHeaSet( final unit="K", + final displayUnit="degC", final quantity = "ThermodynamicTemperature") "Zone heating setpoint temperature" annotation (Placement(transformation(extent={{200,50},{220,70}}), iconTransformation(extent={{200,40},{240,80}}))); Buildings.Controls.OBC.CDL.Interfaces.RealOutput TZonCooSet( final unit="K", + final displayUnit="degC", final quantity = "ThermodynamicTemperature") "Zone cooling setpoint temperature" annotation (Placement(transformation(extent={{200,-10},{220,10}}), iconTransformation(extent={{200,-20},{240,20}}))); 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 bc8a7ed9fee..90e232a1fd7 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 @@ -21,11 +21,13 @@ model CoolingCoil "Controller for cooling coil valve" Buildings.Controls.OBC.CDL.Interfaces.RealInput TSupCoo( final unit="K", + final displayUnit="degC", final quantity = "ThermodynamicTemperature") "Cooling supply air temperature setpoint" annotation (Placement(transformation(extent={{-140,60},{-100,100}}))); Buildings.Controls.OBC.CDL.Interfaces.RealInput TSup( final unit="K", + final displayUnit="degC", final quantity = "ThermodynamicTemperature") "Supply air temperature measurement" annotation (Placement(transformation(extent={{-140,20},{-100,60}}))); diff --git a/Buildings/Controls/OBC/ASHRAE/G36_PR1/AHUs/SingleZone/VAV/Economizers/Controller.mo b/Buildings/Controls/OBC/ASHRAE/G36_PR1/AHUs/SingleZone/VAV/Economizers/Controller.mo index aeda07614b8..1cf5b6269f4 100644 --- a/Buildings/Controls/OBC/ASHRAE/G36_PR1/AHUs/SingleZone/VAV/Economizers/Controller.mo +++ b/Buildings/Controls/OBC/ASHRAE/G36_PR1/AHUs/SingleZone/VAV/Economizers/Controller.mo @@ -13,11 +13,16 @@ block Controller "Single zone VAV AHU economizer control sequence" parameter Boolean use_G36FrePro=false "Set to true if G36 freeze protection is implemented"; - parameter Modelica.SIunits.TemperatureDifference delTOutHis=1 + parameter Real delTOutHis( + final unit="K", + final displayUnit="K", + final quantity="TemperatureDifference")=1 "Delta between the temperature hysteresis high and low limit" annotation(Evaluate=true, Dialog(tab="Advanced", group="Hysteresis")); - parameter Modelica.SIunits.SpecificEnergy delEntHis=1000 + parameter Real delEntHis( + final unit="J/kg", + final quantity="SpecificEnergy")=1000 "Delta between the enthalpy hysteresis high and low limits" annotation(Evaluate=true, Dialog(tab="Advanced", group="Hysteresis", enable = use_enthalpy)); @@ -29,13 +34,17 @@ block Controller "Single zone VAV AHU economizer control sequence" parameter Real kMod(final unit="1/K")=1 "Gain of modulation controller" annotation(Dialog(group="Modulation")); - parameter Modelica.SIunits.Time TiMod=300 + parameter Real TiMod( + final unit="s", + final quantity="Time")=300 "Time constant of modulation controller integrator block" annotation (Dialog(group="Modulation", enable=controllerTypeMod == Buildings.Controls.OBC.CDL.Types.SimpleController.PI or controllerTypeMod == Buildings.Controls.OBC.CDL.Types.SimpleController.PID)); - parameter Modelica.SIunits.Time TdMod=0.1 + parameter Real TdMod( + final unit="s", + final quantity="Time")=0.1 "Time constant of derivative block for modulation controller" annotation (Dialog(group="Modulation", enable=controllerTypeMod == Buildings.Controls.OBC.CDL.Types.SimpleController.PD @@ -61,21 +70,28 @@ block Controller "Single zone VAV AHU economizer control sequence" "Gain for mixed air temperature tracking for freeze protection, used if use_TMix=true" annotation(Dialog(group="Freeze protection", enable=use_TMix)); - parameter Modelica.SIunits.Time TiFre=120 + parameter Real TiFre( + final unit="s", + final quantity="Time")=120 "Time constant of controller for mixed air temperature tracking for freeze protection. Require TiFre < TiMinOut" annotation(Dialog(group="Freeze protection", enable=use_TMix and (controllerTypeFre == Buildings.Controls.OBC.CDL.Types.SimpleController.PI or controllerTypeFre == Buildings.Controls.OBC.CDL.Types.SimpleController.PID))); - parameter Modelica.SIunits.Time TdFre=0.1 + parameter Real TdFre( + final unit="s", + final quantity="Time")=0.1 "Time constant of derivative block for freeze protection" annotation (Dialog(group="Freeze protection", enable=use_TMix and (controllerTypeFre == Buildings.Controls.OBC.CDL.Types.SimpleController.PD or controllerTypeFre == Buildings.Controls.OBC.CDL.Types.SimpleController.PID))); - parameter Modelica.SIunits.Temperature TFreSet = 277.15 + parameter Real TFreSet( + final unit="K", + final displayUnit="degC", + final quantity="ThermodynamicTemperature") = 277.15 "Lower limit for mixed air temperature for freeze protection, used if use_TMix=true" annotation(Dialog(group="Freeze protection", enable=use_TMix)); @@ -89,10 +105,14 @@ block Controller "Single zone VAV AHU economizer control sequence" final max=1, final unit="1") = 0.9 "Maximum supply fan operation speed" annotation(Evaluate=true, Dialog(tab="Commissioning", group="Damper position limits")); - parameter Modelica.SIunits.VolumeFlowRate VOutMin_flow=1.0 + parameter Real VOutMin_flow( + final unit="m3/s", + final quantity="VolumeFlowRate")=1.0 "Calculated minimum outdoor airflow rate" annotation(Evaluate=true, Dialog(tab="Commissioning", group="Damper position limits")); - parameter Modelica.SIunits.VolumeFlowRate VOutDes_flow=2.0 + parameter Real VOutDes_flow( + final unit="m3/s", + final quantity="VolumeFlowRate")=2.0 "Calculated design outdoor airflow rate" annotation(Evaluate=true, Dialog(tab="Commissioning", group="Damper position limits")); parameter Real yDam_VOutMin_minSpe( @@ -146,30 +166,35 @@ block Controller "Single zone VAV AHU economizer control sequence" Buildings.Controls.OBC.CDL.Interfaces.RealInput THeaSupSet( final unit="K", + final displayUnit="degC", final quantity = "ThermodynamicTemperature") "Supply air temperature heating setpoint" annotation (Placement(transformation(extent={{-160,10},{-140,30}}), iconTransformation(extent={{-120,-12},{-100,8}}))); Buildings.Controls.OBC.CDL.Interfaces.RealInput TSup( final unit="K", + final displayUnit="degC", final quantity = "ThermodynamicTemperature") "Measured supply air temperature" annotation (Placement(transformation(extent={{-160,30},{-140,50}}), iconTransformation(extent={{-120,4},{-100,24}}))); Buildings.Controls.OBC.CDL.Interfaces.RealInput TOut( final unit="K", + final displayUnit="degC", final quantity = "ThermodynamicTemperature") "Outdoor air temperature" annotation (Placement(transformation(extent={{-160,130},{-140,150}}), iconTransformation(extent={{-120,84},{-100,104}}))); Buildings.Controls.OBC.CDL.Interfaces.RealInput TCut( final unit="K", + final displayUnit="degC", final quantity="ThermodynamicTemperature") "Outdoor air temperature high limit cutoff. For differential dry bulb temeprature condition use return air temperature measurement" annotation (Placement(transformation(extent={{-160,110},{-140,130}}), iconTransformation(extent={{-120,68},{-100,88}}))); Buildings.Controls.OBC.CDL.Interfaces.RealInput TRet( final unit="K", + final displayUnit="degC", final quantity="ThermodynamicTemperature") if use_fixed_plus_differential_drybulb "Used only for fixed plus differential dry bulb temperature high limit cutoff" @@ -188,6 +213,7 @@ block Controller "Single zone VAV AHU economizer control sequence" iconTransformation(extent={{-120,20},{-100,40}}))); Buildings.Controls.OBC.CDL.Interfaces.RealInput TMix( final unit="K", + final displayUnit="degC", final quantity = "ThermodynamicTemperature") if use_TMix "Measured mixed air temperature, used for freeze protection" annotation (Placement(transformation(extent={{-160,-50},{-140,-30}}), 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 ee6dad3b35c..2e4495ef40f 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 @@ -9,10 +9,15 @@ block Enable "Set to true to evaluate fixed plus differential dry bulb temperature high limit cutoff; shall not be used with enthalpy" annotation(Dialog(group="Conditional", enable=not use_enthalpy)); - parameter Modelica.SIunits.TemperatureDifference delTOutHis=1 + parameter Real delTOutHis( + final unit="K", + final displayUnit="K", + final quantity="TemperatureDifference")=1 "Delta between the temperature hysteresis high and low limit" annotation(Evaluate=true, Dialog(tab="Advanced", group="Hysteresis")); - parameter Modelica.SIunits.SpecificEnergy delEntHis=1000 + parameter Real delEntHis( + final unit="J/kg", + final quantity="SpecificEnergy")=1000 "Delta between the enthalpy hysteresis high and low limits" annotation(Evaluate=true, Dialog(tab="Advanced", group="Hysteresis", enable = use_enthalpy)); parameter Real retDamPhyPosMax( @@ -30,6 +35,7 @@ block Enable Buildings.Controls.OBC.CDL.Interfaces.RealInput TOut( final unit="K", + final displayUnit="degC", final quantity = "ThermodynamicTemperature") "Outdoor air temperature" annotation (Placement(transformation(extent={{-220,250},{-180,290}}), @@ -40,13 +46,16 @@ block Enable "Outdoor air enthalpy" annotation (Placement(transformation(extent={{-220,160},{-180,200}}), iconTransformation(extent={{-120,30},{-100,50}}))); - Buildings.Controls.OBC.CDL.Interfaces.RealInput TCut(final unit="K", final - quantity="ThermodynamicTemperature") + Buildings.Controls.OBC.CDL.Interfaces.RealInput TCut( + final unit="K", + final displayUnit="degC", + final quantity="ThermodynamicTemperature") "OA temperature high limit cutoff. For differential dry bulb temeprature condition use return air temperature measurement" annotation (Placement(transformation(extent={{-220,220},{-180,260}}), iconTransformation(extent={{-120,68},{-100,88}}))); Buildings.Controls.OBC.CDL.Interfaces.RealInput TRet( final unit="K", + final displayUnit="degC", final quantity = "ThermodynamicTemperature") if use_fixed_plus_differential_drybulb "Used only for fixed plus differential dry bulb temperature high limit cutoff" annotation (Placement(transformation(extent={{-220,190},{-180,230}}), @@ -114,11 +123,16 @@ block Enable CDL.Logical.Xor xor "Either fixed+differential temperature cutoff or others" annotation (Placement(transformation(extent={{74,242},{94,262}}))); protected - final parameter Modelica.SIunits.Temperature TOutHigLimCutHig = 0 + final parameter Real TOutHigLimCutHig( + final unit="K", + final displayUnit="K", + final quantity="TemperatureDifference") = 0 "Hysteresis high limit cutoff"; final parameter Real TOutHigLimCutLow = TOutHigLimCutHig - delTOutHis "Hysteresis low limit cutoff"; - final parameter Modelica.SIunits.SpecificEnergy hOutHigLimCutHig = 0 + final parameter Real hOutHigLimCutHig( + final unit="J/kg", + final quantity="SpecificEnergy") = 0 "Hysteresis block high limit cutoff"; final parameter Real hOutHigLimCutLow = hOutHigLimCutHig - delEntHis "Hysteresis block low limit cutoff"; 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 0606ddb5052..a3890107d73 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 @@ -35,10 +35,13 @@ block Limits "Single zone VAV AHU minimum outdoor air control - damper position final unit="1") = 0.8 "OA damper position to supply design outdoor airflow at maximum fan speed" annotation(Evaluate=true, Dialog(tab="Commissioning", group="Damper position limits")); - parameter Modelica.SIunits.VolumeFlowRate VOutMin_flow - "Calculated minimum outdoor airflow rate" + parameter Real VOutMin_flow( + final unit="m3/s", + final quantity="VolumeFlowRate") "Calculated minimum outdoor airflow rate" annotation(Evaluate=true, Dialog(tab="Commissioning", group="Damper position limits")); - parameter Modelica.SIunits.VolumeFlowRate VOutDes_flow + parameter Real VOutDes_flow( + final unit="m3/s", + final quantity="VolumeFlowRate") "Calculated design outdoor airflow rate" annotation(Evaluate=true, Dialog(tab="Commissioning", group="Damper position limits")); parameter Real outDamPhyPosMax( 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 f1811d0a0ff..fba179ccf09 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 @@ -5,12 +5,16 @@ block Modulation "Outdoor and return air damper position modulation sequence for Buildings.Controls.OBC.CDL.Types.SimpleController.PI "Type of controller"; parameter Real k(final unit="1/K") = 1 "Gain of controller"; - parameter Modelica.SIunits.Time Ti=300 + parameter Real Ti( + final unit="s", + final quantity="Time")=300 "Time constant of modulation controller integrator block" annotation (Dialog( enable=controllerType == Buildings.Controls.OBC.CDL.Types.SimpleController.PI or controllerType == Buildings.Controls.OBC.CDL.Types.SimpleController.PID)); - parameter Modelica.SIunits.Time Td=0.1 + parameter Real Td( + final unit="s", + final quantity="Time")=0.1 "Time constant of derivative block for cooling control loop signal" annotation (Dialog( enable=controllerType == Buildings.Controls.OBC.CDL.Types.SimpleController.PD @@ -31,12 +35,14 @@ block Modulation "Outdoor and return air damper position modulation sequence for Buildings.Controls.OBC.CDL.Interfaces.RealInput TSup( final unit="K", + final displayUnit="degC", final quantity = "ThermodynamicTemperature") "Measured supply air temperature" annotation (Placement(transformation(extent={{-160,90},{-120,130}}), iconTransformation(extent={{-140,60},{-100,100}}))); Buildings.Controls.OBC.CDL.Interfaces.RealInput THeaSupSet( final unit="K", + final displayUnit="degC", final quantity = "ThermodynamicTemperature") "Supply air temperature heating setpoint" annotation (Placement(transformation(extent={{-160,60},{-120,100}}), iconTransformation(extent={{-140,40},{-100,80}}))); diff --git a/Buildings/Controls/OBC/ASHRAE/G36_PR1/AHUs/SingleZone/VAV/Economizers/Subsequences/Validation/Enable_FreProSta_ZonSta.mo b/Buildings/Controls/OBC/ASHRAE/G36_PR1/AHUs/SingleZone/VAV/Economizers/Subsequences/Validation/Enable_FreProSta_ZonSta.mo index a08d7d046de..7c750a6ea93 100644 --- a/Buildings/Controls/OBC/ASHRAE/G36_PR1/AHUs/SingleZone/VAV/Economizers/Subsequences/Validation/Enable_FreProSta_ZonSta.mo +++ b/Buildings/Controls/OBC/ASHRAE/G36_PR1/AHUs/SingleZone/VAV/Economizers/Subsequences/Validation/Enable_FreProSta_ZonSta.mo @@ -10,9 +10,14 @@ model Enable_FreProSta_ZonSta annotation (Placement(transformation(extent={{82,-40},{102,-20}}))); protected - final parameter Modelica.SIunits.Temperature TOutCutoff=297.15 + final parameter Real TOutCutoff( + final unit="K", + final displayUnit="degC", + final quantity = "ThermodynamicTemperature")=297.15 "Outdoor temperature high limit cutoff"; - final parameter Modelica.SIunits.SpecificEnergy hOutCutoff=65100 + final parameter Real hOutCutoff( + final unit="J/kg", + final quantity = "SpecificEnergy")=65100 "Outdoor air enthalpy high limit cutoff"; Buildings.Controls.OBC.CDL.Continuous.Sources.Constant TOutBelowCutoff( diff --git a/Buildings/Controls/OBC/ASHRAE/G36_PR1/AHUs/SingleZone/VAV/Economizers/Subsequences/Validation/Enable_TOut_hOut.mo b/Buildings/Controls/OBC/ASHRAE/G36_PR1/AHUs/SingleZone/VAV/Economizers/Subsequences/Validation/Enable_TOut_hOut.mo index 8e598d9d3b7..fb59c6d948d 100644 --- a/Buildings/Controls/OBC/ASHRAE/G36_PR1/AHUs/SingleZone/VAV/Economizers/Subsequences/Validation/Enable_TOut_hOut.mo +++ b/Buildings/Controls/OBC/ASHRAE/G36_PR1/AHUs/SingleZone/VAV/Economizers/Subsequences/Validation/Enable_TOut_hOut.mo @@ -42,9 +42,14 @@ model Enable_TOut_hOut final offset=TOutCutoff - 4) "Outoor air temperature" annotation (Placement(transformation(extent={{-50,106},{-30,126}}))); protected - final parameter Modelica.SIunits.Temperature TOutCutoff=297.15 + final parameter Real TOutCutoff( + final unit="K", + final displayUnit="degC", + final quantity = "ThermodynamicTemperature")=297.15 "Outdoor temperature high limit cutoff"; - final parameter Modelica.SIunits.SpecificEnergy hOutCutoff=65100 + final parameter Real hOutCutoff( + final unit="J/kg", + final quantity = "SpecificEnergy")=65100 "Outdoor air enthalpy high limit cutoff"; final parameter Real outDamPosMin=0.1 "Minimum outdoor air damper position"; diff --git a/Buildings/Controls/OBC/ASHRAE/G36_PR1/AHUs/SingleZone/VAV/Economizers/Subsequences/Validation/Limits_Disable.mo b/Buildings/Controls/OBC/ASHRAE/G36_PR1/AHUs/SingleZone/VAV/Economizers/Subsequences/Validation/Limits_Disable.mo index 0bdc18a7046..2ae1352f5b1 100644 --- a/Buildings/Controls/OBC/ASHRAE/G36_PR1/AHUs/SingleZone/VAV/Economizers/Subsequences/Validation/Limits_Disable.mo +++ b/Buildings/Controls/OBC/ASHRAE/G36_PR1/AHUs/SingleZone/VAV/Economizers/Subsequences/Validation/Limits_Disable.mo @@ -30,15 +30,25 @@ model Limits_Disable protected final parameter Real yFanMin=0.1 "Minimum supply fan operation speed"; final parameter Real yFanMax=0.9 "Maximum supply fan operation speed"; - final parameter Modelica.SIunits.VolumeFlowRate VOutDes_flow=2.0 + final parameter Real VOutDes_flow( + final unit="m3/s", + final quantity="VolumeFlowRate")=2.0 "Calculated design outdoor airflow rate"; - final parameter Modelica.SIunits.VolumeFlowRate VOutMin_flow=1.0 + final parameter Real VOutMin_flow( + final unit="m3/s", + final quantity="VolumeFlowRate")=1.0 "Calculated minimum outdoor airflow rate"; - final parameter Modelica.SIunits.VolumeFlowRate VOutSet_flow=0.71 + final parameter Real VOutSet_flow( + final unit="m3/s", + final quantity="VolumeFlowRate")=0.71 "Example volumetric airflow setpoint, 15cfm/occupant, 100 occupants"; - final parameter Modelica.SIunits.VolumeFlowRate minVOutSet_flow=0.61 + final parameter Real minVOutSet_flow( + final unit="m3/s", + final quantity="VolumeFlowRate")=0.61 "Volumetric airflow sensor output, minimum value in the example"; - final parameter Modelica.SIunits.VolumeFlowRate incVOutSet_flow=0.2 + final parameter Real incVOutSet_flow( + final unit="m3/s", + final quantity="VolumeFlowRate")=0.2 "Maximum increase in airflow volume during the example simulation"; Buildings.Controls.OBC.CDL.Continuous.Sources.Ramp SupFanSpeSig( @@ -87,43 +97,47 @@ protected equation connect(SupFanSpeSig.y, damLim1.uSupFanSpe) - annotation (Line(points={{-139,30},{-120,30},{-120,-6},{-120,-6.2},{-110,-6.2},{-101,-6.2}}, + annotation (Line(points={{-138,30},{-120,30},{-120,-6},{-120,-6.2},{-102,-6.2}, + {-102,-6}}, color={0,0,127})); connect(VOutMinSetSig.y, damLim2.VOutMinSet_flow) - annotation (Line(points={{-139,70},{-10,70},{-10,-3},{19,-3}}, color={0,0,127})); + annotation (Line(points={{-138,70},{-10,70},{-10,-2},{18,-2}}, color={0,0,127})); connect(fanStatus1.y, damLim1.uSupFan) - annotation (Line(points={{-139,-30},{-130,-30},{-130,-12},{-130,-12},{-102,-12},{-101,-12}}, + annotation (Line(points={{-138,-30},{-130,-30},{-130,-12},{-130,-12},{-102,-12}, + {-102,-10}}, color={255,0,255})); connect(freProSta1.y, damLim1.uFreProSta) - annotation (Line(points={{-139,-90},{-110,-90},{-110,-18},{-101,-18}}, color={255,127,0})); + annotation (Line(points={{-138,-90},{-110,-90},{-110,-14},{-102,-14}}, color={255,127,0})); connect(operationMode1.y, damLim1.uOpeMod) - annotation (Line(points={{-139,-60},{-120,-60},{-120,-15},{-101,-15}}, color={255,127,0})); + annotation (Line(points={{-138,-60},{-120,-60},{-120,-18.2},{-102,-18.2}}, + color={255,127,0})); connect(fanStatus2.y,damLim2. uSupFan) - annotation (Line(points={{-19,-30},{-10,-30},{-10,-12},{19,-12}}, color={255,0,255})); + annotation (Line(points={{-18,-30},{-10,-30},{-10,-10},{18,-10}}, color={255,0,255})); connect(freProSta2.y,damLim2. uFreProSta) - annotation (Line(points={{-19,-90},{10,-90},{10,-18},{19,-18}}, color={255,127,0})); + annotation (Line(points={{-18,-90},{10,-90},{10,-14},{18,-14}}, color={255,127,0})); connect(operationMode2.y,damLim2. uOpeMod) - annotation (Line(points={{-19,-60},{0,-60},{0,-15},{19,-15}}, + annotation (Line(points={{-18,-60},{0,-60},{0,-18.2},{18,-18.2}}, color={255,127,0})); connect(fanStatus3.y,damLim3. uSupFan) - annotation (Line(points={{101,-30},{102,-30},{110,-30},{110,-12},{139,-12}}, + annotation (Line(points={{102,-30},{102,-30},{110,-30},{110,-10},{138,-10}}, color={255,0,255})); connect(freProSta3.y,damLim3. uFreProSta) - annotation (Line(points={{101,-90},{130,-90},{130,-18},{139,-18}},color={255,127,0})); + annotation (Line(points={{102,-90},{130,-90},{130,-14},{138,-14}},color={255,127,0})); connect(operationMode3.y,damLim3. uOpeMod) - annotation (Line(points={{101,-60},{120,-60},{120,-15},{139,-15}}, + annotation (Line(points={{102,-60},{120,-60},{120,-18.2},{138,-18.2}}, color={255,127,0})); connect(VOutMinSetSig.y, damLim3.VOutMinSet_flow) - annotation (Line(points={{-139,70},{130,70},{130,-3},{139,-3}}, + annotation (Line(points={{-138,70},{130,70},{130,-2},{138,-2}}, color={0,0,127})); connect(VOutMinSetSig.y, damLim1.VOutMinSet_flow) - annotation (Line(points={{-139,70},{-110,70},{-110,-3},{-101,-3}}, + annotation (Line(points={{-138,70},{-110,70},{-110,-2},{-102,-2}}, color={0,0,127})); connect(SupFanSpeSig.y, damLim2.uSupFanSpe) - annotation (Line(points={{-139,30},{-20,30},{-20,-6},{0,-6},{0,-6.2},{19,-6.2}}, + annotation (Line(points={{-138,30},{-20,30},{-20,-6},{0,-6},{0,-6},{18,-6}}, color={0,0,127})); connect(SupFanSpeSig.y, damLim3.uSupFanSpe) - annotation (Line(points={{-139,30},{120,30},{120,-6},{130,-6},{130,-6.2},{139,-6.2}}, + annotation (Line(points={{-138,30},{120,30},{120,-6},{130,-6},{130,-6},{138, + -6}}, color={0,0,127})); annotation ( experiment(StopTime=1800.0, Tolerance=1e-06), diff --git a/Buildings/Controls/OBC/ASHRAE/G36_PR1/AHUs/SingleZone/VAV/Economizers/Subsequences/Validation/Limits_FanSpe_VOut_flow.mo b/Buildings/Controls/OBC/ASHRAE/G36_PR1/AHUs/SingleZone/VAV/Economizers/Subsequences/Validation/Limits_FanSpe_VOut_flow.mo index a7d017059ec..91dfe41f5d3 100644 --- a/Buildings/Controls/OBC/ASHRAE/G36_PR1/AHUs/SingleZone/VAV/Economizers/Subsequences/Validation/Limits_FanSpe_VOut_flow.mo +++ b/Buildings/Controls/OBC/ASHRAE/G36_PR1/AHUs/SingleZone/VAV/Economizers/Subsequences/Validation/Limits_FanSpe_VOut_flow.mo @@ -23,11 +23,17 @@ protected final parameter Real yFanMin=0.1 "Minimum supply fan operation speed"; final parameter Real yFanMax=0.9 "Maximum supply fan operation speed"; final parameter Real fanSpe = (yFanMax + yFanMin)/2 "Constant supply fan speed"; - final parameter Modelica.SIunits.VolumeFlowRate VOutDes_flow=2.0 + final parameter Real VOutDes_flow( + final unit="m3/s", + final quantity="VolumeFlowRate")=2.0 "Calculated design outdoor airflow rate"; - final parameter Modelica.SIunits.VolumeFlowRate VOutMin_flow=1.0 + final parameter Real VOutMin_flow( + final unit="m3/s", + final quantity="VolumeFlowRate")=1.0 "Calculated minimum outdoor airflow rate"; - final parameter Modelica.SIunits.VolumeFlowRate VOutSet_flow=(VOutDes_flow + VOutMin_flow)/2 + final parameter Real VOutSet_flow( + final unit="m3/s", + final quantity="VolumeFlowRate")=(VOutDes_flow + VOutMin_flow)/2 "Constant minimum outdoor airflow setpoint"; Buildings.Controls.OBC.CDL.Logical.Sources.Constant fanStatus( @@ -61,26 +67,28 @@ protected equation connect(freProSta.y, damLim.uFreProSta) - annotation (Line(points={{-99,-90},{-60,-90},{-60,-18},{-41,-18}}, color={255,127,0})); + annotation (Line(points={{-98,-90},{-60,-90},{-60,-14},{-42,-14}}, color={255,127,0})); connect(damLim.uSupFan, fanStatus.y) - annotation (Line(points={{-41,-12},{-70,-12},{-70,-10},{-99,-10}}, color={255,0,255})); + annotation (Line(points={{-42,-10},{-70,-10},{-70,-10},{-98,-10}}, color={255,0,255})); connect(operationMode.y, damLim.uOpeMod) - annotation (Line(points={{-99,-50},{-70,-50},{-70,-15},{-41,-15}}, + annotation (Line(points={{-98,-50},{-70,-50},{-70,-18.2},{-42,-18.2}}, color={255,127,0})); connect(fanStatus.y, damLim1.uSupFan) - annotation (Line(points={{-99,-10},{-80,-10},{-80,-30},{60,-30},{60,-12},{99,-12}}, color={255,0,255})); + annotation (Line(points={{-98,-10},{-80,-10},{-80,-30},{60,-30},{60,-10},{98, + -10}}, color={255,0,255})); connect(operationMode.y, damLim1.uOpeMod) - annotation (Line(points={{-99,-50},{70,-50},{70,-15},{99,-15}}, color={255,127,0})); + annotation (Line(points={{-98,-50},{70,-50},{70,-18.2},{98,-18.2}}, + color={255,127,0})); connect(freProSta.y, damLim1.uFreProSta) - annotation (Line(points={{-99,-90},{80,-90},{80,-18},{99,-18}}, color={255,127,0})); + annotation (Line(points={{-98,-90},{80,-90},{80,-14},{98,-14}}, color={255,127,0})); connect(VOutMinSetSig.y, damLim.VOutMinSet_flow) - annotation (Line(points={{-99,70},{-60,70},{-60,-3},{-41,-3}}, color={0,0,127})); + annotation (Line(points={{-98,70},{-60,70},{-60,-2},{-42,-2}}, color={0,0,127})); connect(SupFanSpeSig.y, damLim.uSupFanSpe) - annotation (Line(points={{-99,30},{-70,30},{-70,-6.2},{-41,-6.2}}, color={0,0,127})); + annotation (Line(points={{-98,30},{-70,30},{-70,-6},{-42,-6}}, color={0,0,127})); connect(SupFanSpeSig1.y, damLim1.uSupFanSpe) - annotation (Line(points={{41,30},{70,30},{70,-6.2},{99,-6.2}}, color={0,0,127})); + annotation (Line(points={{42,30},{70,30},{70,-6},{98,-6}}, color={0,0,127})); connect(VOutMinSetSig1.y, damLim1.VOutMinSet_flow) - annotation (Line(points={{41,70},{80,70},{80,-3},{99,-3}}, color={0,0,127})); + annotation (Line(points={{42,70},{80,70},{80,-2},{98,-2}}, color={0,0,127})); annotation ( experiment(StopTime=1800.0, Tolerance=1e-06), __Dymola_Commands(file="modelica://Buildings/Resources/Scripts/Dymola/Controls/OBC/ASHRAE/G36_PR1/AHUs/SingleZone/VAV/Economizers/Subsequences/Validation/Limits_FanSpe_VOut_flow.mos" diff --git a/Buildings/Controls/OBC/ASHRAE/G36_PR1/AHUs/SingleZone/VAV/Economizers/Subsequences/Validation/Modulation_TSup.mo b/Buildings/Controls/OBC/ASHRAE/G36_PR1/AHUs/SingleZone/VAV/Economizers/Subsequences/Validation/Modulation_TSup.mo index 9d032b61663..75b6d859ba0 100644 --- a/Buildings/Controls/OBC/ASHRAE/G36_PR1/AHUs/SingleZone/VAV/Economizers/Subsequences/Validation/Modulation_TSup.mo +++ b/Buildings/Controls/OBC/ASHRAE/G36_PR1/AHUs/SingleZone/VAV/Economizers/Subsequences/Validation/Modulation_TSup.mo @@ -2,7 +2,10 @@ within Buildings.Controls.OBC.ASHRAE.G36_PR1.AHUs.SingleZone.VAV.Economizers.Sub model Modulation_TSup "Validation model for single zone VAV AHU outdoor and return air damper position modulation sequence" - final parameter Modelica.SIunits.Temperature TSupSet=291.15 + final parameter Real TSupSet( + final unit="K", + final displayUnit="degC", + final quantity="ThermodynamicTemperature")=291.15 "Supply air temperature setpoint"; Buildings.Controls.OBC.ASHRAE.G36_PR1.AHUs.SingleZone.VAV.Economizers.Subsequences.Modulation diff --git a/Buildings/Controls/OBC/ASHRAE/G36_PR1/AHUs/SingleZone/VAV/Economizers/Validation/Controller_Disable.mo b/Buildings/Controls/OBC/ASHRAE/G36_PR1/AHUs/SingleZone/VAV/Economizers/Validation/Controller_Disable.mo index 9dffbe89f63..6b16753b684 100644 --- a/Buildings/Controls/OBC/ASHRAE/G36_PR1/AHUs/SingleZone/VAV/Economizers/Validation/Controller_Disable.mo +++ b/Buildings/Controls/OBC/ASHRAE/G36_PR1/AHUs/SingleZone/VAV/Economizers/Validation/Controller_Disable.mo @@ -34,11 +34,19 @@ model Controller_Disable annotation (Placement(transformation(extent={{180,-40},{200,-20}}))); protected - final parameter Modelica.SIunits.Temperature TOutCutoff=297.15 + final parameter Real TOutCutoff( + final unit="K", + final displayUnit="degC", + final quantity="ThermodynamicTemperature")=297.15 "Outdoor temperature high limit cutoff"; - final parameter Modelica.SIunits.SpecificEnergy hOutCutoff=65100 + final parameter Real hOutCutoff( + final unit="J/kg", + final quantity="SpecificEnergy")=65100 "Outdoor air enthalpy high limit cutoff"; - final parameter Modelica.SIunits.Temperature TSupSet=291.15 "Supply air temperature setpoint"; + final parameter Real TSupSet( + final unit="K", + final displayUnit="degC", + final quantity="ThermodynamicTemperature")=291.15 "Supply air temperature setpoint"; final parameter Real yFanMin( final min=0, final max=1, @@ -47,9 +55,13 @@ protected final min=0, final max=1, final unit="1")=0.9 "Maximum supply fan operation speed"; - final parameter Modelica.SIunits.VolumeFlowRate VOutMin_flow=1.0 + final parameter Real VOutMin_flow( + final unit="m3/s", + final quantity="VolumeFlowRate")=1.0 "Calculated minimum outdoor airflow rate"; - final parameter Modelica.SIunits.VolumeFlowRate VOutDes_flow=2.0 + final parameter Real VOutDes_flow( + final unit="m3/s", + final quantity="VolumeFlowRate")=2.0 "Calculated design outdoor airflow rate"; Buildings.Controls.OBC.CDL.Logical.Sources.Constant fanSta( @@ -111,78 +123,103 @@ protected equation connect(fanSta.y, economizer.uSupFan) - annotation (Line(points={{-19,-10},{-10,-10},{-10,4},{19,4}},color={255,0,255})); + annotation (Line(points={{-18,-10},{-10,-10},{-10,4.4},{19,4.4}}, + color={255,0,255})); connect(freProSta.y, economizer.uFreProSta) - annotation (Line(points={{-59,-120},{0,-120},{0,-2},{19,-2}},color={255,127,0})); + annotation (Line(points={{-58,-120},{0,-120},{0,0.4},{19,0.4}}, + color={255,127,0})); connect(TOutBelowCutoff.y, economizer.TOut) - annotation (Line(points={{-99,110},{-6,110},{-6,24},{19,24}},color={0,0,127})); + annotation (Line(points={{-98,110},{-6,110},{-6,19.4},{19,19.4}}, + color={0,0,127})); connect(TOutCut1.y,economizer.TCut) - annotation (Line(points={{-99,70},{-90,70},{-8,70},{-8,22},{19,22}},color={0,0,127})); + annotation (Line(points={{-98,70},{-98,70},{-8,70},{-8,17.8},{19,17.8}}, + color={0,0,127})); connect(hOutBelowCutoff.y, economizer.hOut) - annotation (Line(points={{-99,20},{-60,20},{-60,18},{-4,18},{19,18}},color={0,0,127})); + annotation (Line(points={{-98,20},{-60,20},{-60,18},{19,18},{19,14.6}}, + color={0,0,127})); connect(hOutCut.y,economizer.hCut) - annotation (Line(points={{-99,-20},{-60,-20},{-60,2},{-60,16},{19,16}},color={0,0,127})); + annotation (Line(points={{-98,-20},{-60,-20},{-60,2},{-60,13},{19,13}},color={0,0,127})); connect(TSup.y, economizer.TSup) - annotation (Line(points={{-59,90},{-50,90},{-50,14},{19,14}},color={0,0,127})); + annotation (Line(points={{-58,90},{-50,90},{-50,11.4},{19,11.4}}, + color={0,0,127})); connect(TSupSetSig.y, economizer.THeaSupSet) - annotation (Line(points={{-59,50},{-52,50},{-52,12},{19,12}},color={0,0,127})); + annotation (Line(points={{-58,50},{-52,50},{-52,9.8},{19,9.8}}, + color={0,0,127})); connect(TOutCut1.y,economizer1.TCut) - annotation (Line(points={{-99,70},{74,70},{74,2},{99,2}}, color={0,0,127})); + annotation (Line(points={{-98,70},{74,70},{74,-2.2},{99,-2.2}}, + color={0,0,127})); connect(TOutBelowCutoff.y, economizer1.TOut) - annotation (Line(points={{-99,110},{80,110},{80,4},{99,4}}, color={0,0,127})); + annotation (Line(points={{-98,110},{80,110},{80,-0.6},{99,-0.6}}, + color={0,0,127})); connect(hOutCut.y,economizer1.hCut) - annotation (Line(points={{-99,-20},{-90,-20},{-90,-28},{76,-28},{76,-4},{99,-4}}, + annotation (Line(points={{-98,-20},{-90,-20},{-90,-28},{76,-28},{76,-7},{99, + -7}}, color={0,0,127})); connect(hOutBelowCutoff.y, economizer1.hOut) - annotation (Line(points={{-99,20},{-88,20},{-88,-26},{74,-26},{74,-2},{99,-2}}, + annotation (Line(points={{-98,20},{-88,20},{-88,-26},{74,-26},{74,-5.4},{99, + -5.4}}, color={0,0,127})); connect(TSup.y, economizer1.TSup) - annotation (Line(points={{-59,90},{-50,90},{-50,118},{82,118},{82,-6},{99,-6}}, + annotation (Line(points={{-58,90},{-50,90},{-50,118},{82,118},{82,-8.6},{99, + -8.6}}, color={0,0,127})); connect(TSupSetSig.y, economizer1.THeaSupSet) - annotation (Line(points={{-59,50},{-52,50},{-52,68},{72,68},{72,-8},{99,-8}}, + annotation (Line(points={{-58,50},{-52,50},{-52,68},{72,68},{72,-10.2},{99,-10.2}}, color={0,0,127})); connect(fanSta.y, economizer1.uSupFan) - annotation (Line(points={{-19,-10},{20,-10},{20,-16},{99,-16}}, color={255,0,255})); + annotation (Line(points={{-18,-10},{20,-10},{20,-15.6},{99,-15.6}}, + color={255,0,255})); connect(freProSta2.y, economizer1.uFreProSta) - annotation (Line(points={{81,-120},{90,-120},{90,-22},{99,-22}}, color={255,127,0})); + annotation (Line(points={{82,-120},{90,-120},{90,-19.6},{99,-19.6}}, + color={255,127,0})); connect(zonSta.y, economizer.uZonSta) - annotation (Line(points={{-59,-60},{-2,-60},{-2,0},{19,0}}, color={255,127,0})); + annotation (Line(points={{-58,-60},{-2,-60},{-2,1.8},{19,1.8}}, + color={255,127,0})); connect(opeMod.y, economizer.uOpeMod) - annotation (Line(points={{-59,-90},{-4,-90},{-4,2},{19,2}}, color={255,127,0})); + annotation (Line(points={{-58,-90},{-4,-90},{-4,3},{19,3}}, color={255,127,0})); connect(opeMod.y, economizer1.uOpeMod) - annotation (Line(points={{-59,-90},{20,-90},{20,-18},{99,-18}}, color={255,127,0})); + annotation (Line(points={{-58,-90},{20,-90},{20,-17},{99,-17}}, color={255,127,0})); connect(zonSta.y, economizer1.uZonSta) - annotation (Line(points={{-59,-60},{22,-60},{22,-20},{99,-20}}, color={255,127,0})); + annotation (Line(points={{-58,-60},{22,-60},{22,-18.2},{99,-18.2}}, + color={255,127,0})); connect(VOutMinSetSig.y, economizer.VOutMinSet_flow) - annotation (Line(points={{-19,90},{0,90},{0,10},{19,10}}, color={0,0,127})); + annotation (Line(points={{-18,90},{0,90},{0,8.4},{19,8.4}}, + color={0,0,127})); connect(SupFanSpeSig.y, economizer.uSupFanSpe) - annotation (Line(points={{-19,50},{0,50},{0,8},{19,8}}, color={0,0,127})); + annotation (Line(points={{-18,50},{0,50},{0,7},{19,7}}, color={0,0,127})); connect(VOutMinSetSig.y, economizer1.VOutMinSet_flow) - annotation (Line(points={{-19,90},{78,90},{78,-10},{99,-10}}, color={0,0,127})); + annotation (Line(points={{-18,90},{78,90},{78,-11.6},{99,-11.6}}, + color={0,0,127})); connect(SupFanSpeSig.y, economizer1.uSupFanSpe) - annotation (Line(points={{-19,50},{68,50},{68,-12},{99,-12}}, color={0,0,127})); + annotation (Line(points={{-18,50},{68,50},{68,-13},{99,-13}}, color={0,0,127})); connect(fanSta.y, economizer2.uSupFan) - annotation (Line(points={{-19,-10},{-10,-10},{-10,-36},{179,-36}}, color={255,0,255})); + annotation (Line(points={{-18,-10},{-10,-10},{-10,-35.6},{179,-35.6}}, + color={255,0,255})); connect(TOutBelowCutoff.y, economizer2.TOut) - annotation (Line(points={{-99,110},{164,110},{164,-16},{179,-16}}, color={0,0,127})); + annotation (Line(points={{-98,110},{164,110},{164,-20.6},{179,-20.6}}, + color={0,0,127})); connect(TOutCut1.y,economizer2.TCut) - annotation (Line(points={{-99,70},{162,70},{162,-18},{179,-18}}, color={0,0,127})); + annotation (Line(points={{-98,70},{162,70},{162,-22.2},{179,-22.2}}, + color={0,0,127})); connect(TSup.y, economizer2.TSup) - annotation (Line(points={{-59,90},{-52,90},{-52,-26},{179,-26}}, + annotation (Line(points={{-58,90},{-52,90},{-52,-28.6},{179,-28.6}}, color={0,0,127})); connect(TSupSetSig.y, economizer2.THeaSupSet) - annotation (Line(points={{-59,50},{-54,50},{-54,-28},{179,-28}}, color={0,0,127})); + annotation (Line(points={{-58,50},{-54,50},{-54,-30.2},{179,-30.2}}, + color={0,0,127})); connect(VOutMinSetSig.y, economizer2.VOutMinSet_flow) - annotation (Line(points={{-19,90},{150,90},{150,-30},{179,-30}}, color={0,0,127})); + annotation (Line(points={{-18,90},{150,90},{150,-31.6},{179,-31.6}}, + color={0,0,127})); connect(SupFanSpeSig.y, economizer2.uSupFanSpe) - annotation (Line(points={{-19,50},{148,50},{148,-32},{179,-32}}, color={0,0,127})); + annotation (Line(points={{-18,50},{148,50},{148,-33},{179,-33}}, color={0,0,127})); connect(sin1.y, economizer2.TMix) - annotation (Line(points={{161,-69},{170,-69},{170,-34},{179,-34}}, color={0,0,127})); + annotation (Line(points={{162,-69},{170,-69},{170,-34.4},{179,-34.4}}, + color={0,0,127})); connect(opeMod.y, economizer2.uOpeMod) - annotation (Line(points={{-59,-90},{60,-90},{60,-38},{179,-38}}, color={255,127,0})); + annotation (Line(points={{-58,-90},{60,-90},{60,-37},{179,-37}}, color={255,127,0})); connect(zonSta.y, economizer2.uZonSta) - annotation (Line(points={{-59,-60},{62,-60},{62,-40},{179,-40}}, color={255,127,0})); + annotation (Line(points={{-58,-60},{62,-60},{62,-38.2},{179,-38.2}}, + color={255,127,0})); annotation ( experiment(StopTime=1800.0, Tolerance=1e-06), __Dymola_Commands(file="modelica://Buildings/Resources/Scripts/Dymola/Controls/OBC/ASHRAE/G36_PR1/AHUs/SingleZone/VAV/Economizers/Validation/Controller_Disable.mos" diff --git a/Buildings/Controls/OBC/ASHRAE/G36_PR1/AHUs/SingleZone/VAV/Economizers/Validation/Controller_Mod_DamLim.mo b/Buildings/Controls/OBC/ASHRAE/G36_PR1/AHUs/SingleZone/VAV/Economizers/Validation/Controller_Mod_DamLim.mo index 599b0e563e2..172870dabc8 100644 --- a/Buildings/Controls/OBC/ASHRAE/G36_PR1/AHUs/SingleZone/VAV/Economizers/Validation/Controller_Mod_DamLim.mo +++ b/Buildings/Controls/OBC/ASHRAE/G36_PR1/AHUs/SingleZone/VAV/Economizers/Validation/Controller_Mod_DamLim.mo @@ -24,13 +24,24 @@ model Controller_Mod_DamLim annotation (Placement(transformation(extent={{100,-40},{120,-20}}))); protected - parameter Modelica.SIunits.Temperature TOutCutoff=297.15 + parameter Real TOutCutoff( + final unit="K", + final displayUnit="degC", + final quantity="ThermodynamicTemperature")=297.15 "Outdoor temperature high limit cutoff"; - parameter Modelica.SIunits.SpecificEnergy hOutCutoff=65100 + parameter Real hOutCutoff( + final unit="J/kg", + final quantity="SpecificEnergy")=65100 "Outdoor air enthalpy high limit cutoff"; - parameter Modelica.SIunits.Temperature TSupSet=291.15 + parameter Real TSupSet( + final unit="K", + final displayUnit="degC", + final quantity="ThermodynamicTemperature")=291.15 "Supply air temperature Heating setpoint"; - parameter Modelica.SIunits.Temperature TSup=290.15 + parameter Real TSup( + final unit="K", + final displayUnit="degC", + final quantity="ThermodynamicTemperature")=290.15 "Measured supply air temperature"; parameter Real yFanMin( final min=0, @@ -40,8 +51,12 @@ protected final min=0, final max=1, final unit="1") = 0.9 "Maximum supply fan operation speed"; - parameter Modelica.SIunits.VolumeFlowRate VOutMin_flow = 1.0 "Calculated minimum outdoor airflow rate"; - parameter Modelica.SIunits.VolumeFlowRate VOutDes_flow = 2.0 "Calculated design outdoor airflow rate"; + parameter Real VOutMin_flow( + final unit="m3/s", + final quantity="VolumeFlowRate") = 1.0 "Calculated minimum outdoor airflow rate"; + parameter Real VOutDes_flow( + final unit="m3/s", + final quantity="VolumeFlowRate") = 2.0 "Calculated design outdoor airflow rate"; Buildings.Controls.OBC.CDL.Logical.Sources.Constant fanSta( k=true) "Fan is on" @@ -96,57 +111,76 @@ protected equation connect(fanSta.y, economizer.uSupFan) - annotation (Line(points={{-59,-80},{-14,-80},{-14,4},{19,4}}, color={255,0,255})); + annotation (Line(points={{-58,-80},{-14,-80},{-14,4.4},{19,4.4}}, + color={255,0,255})); connect(freProSta.y, economizer.uFreProSta) - annotation (Line(points={{-59,-120},{0,-120},{0,-2},{19,-2}}, color={255,127,0})); + annotation (Line(points={{-58,-120},{0,-120},{0,0.4},{19,0.4}}, + color={255,127,0})); connect(opeMod.y, economizer.uOpeMod) - annotation (Line(points={{-99,-100},{-50,-100},{-50,-30},{-4,-30},{-4,2},{19,2}}, + annotation (Line(points={{-98,-100},{-50,-100},{-50,-30},{-4,-30},{-4,3},{19, + 3}}, color={255,127,0})); connect(zonSta.y, economizer.uZonSta) - annotation (Line(points={{-99,-60},{-48,-60},{-48,-32},{-2,-32},{-2,0},{19,0}}, + annotation (Line(points={{-98,-60},{-48,-60},{-48,-32},{-2,-32},{-2,1.8},{19, + 1.8}}, color={255,127,0})); connect(TOutBelowCutoff.y, economizer.TOut) - annotation (Line(points={{-99,110},{-6,110},{-6,24},{19,24}},color={0,0,127})); + annotation (Line(points={{-98,110},{-6,110},{-6,19.4},{19,19.4}}, + color={0,0,127})); connect(TOutCut1.y,economizer.TCut) - annotation (Line(points={{-99,70},{-10,70},{-10,22},{19,22}}, color={0,0,127})); + annotation (Line(points={{-98,70},{-10,70},{-10,17.8},{19,17.8}}, + color={0,0,127})); connect(hOutBelowCutoff.y, economizer.hOut) - annotation (Line(points={{-99,20},{-60,20},{-60,18},{19,18},{19,18}},color={0,0,127})); + annotation (Line(points={{-98,20},{-60,20},{-60,18},{19,18},{19,14.6}}, + color={0,0,127})); connect(hOutCut.y,economizer.hCut) - annotation (Line(points={{-99,-20},{-60,-20},{-60,2},{-60,16},{19,16}},color={0,0,127})); + annotation (Line(points={{-98,-20},{-60,-20},{-60,2},{-60,13},{19,13}},color={0,0,127})); connect(TSupSetSig.y, economizer.THeaSupSet) - annotation (Line(points={{-59,50},{-52,50},{-52,12},{19,12}},color={0,0,127})); + annotation (Line(points={{-58,50},{-52,50},{-52,9.8},{19,9.8}}, + color={0,0,127})); connect(TSupSig.y, economizer.TSup) - annotation (Line(points={{-59,90},{-50,90},{-50,14},{19,14}}, color={0,0,127})); + annotation (Line(points={{-58,90},{-50,90},{-50,11.4},{19,11.4}}, + color={0,0,127})); connect(TOutBelowCutoff.y, economizer1.TOut) - annotation (Line(points={{-99,110},{90,110},{90,-16},{99,-16}}, color={0,0,127})); + annotation (Line(points={{-98,110},{90,110},{90,-20.6},{99,-20.6}}, + color={0,0,127})); connect(TOutCut1.y,economizer1.TCut) - annotation (Line(points={{-99,70},{88,70},{88,-18},{99,-18}}, color={0,0,127})); + annotation (Line(points={{-98,70},{88,70},{88,-22.2},{99,-22.2}}, + color={0,0,127})); connect(TSupSig1.y, economizer1.TSup) - annotation (Line(points={{61,90},{80,90},{80,-26},{99,-26}}, color={0,0,127})); + annotation (Line(points={{62,90},{80,90},{80,-28.6},{99,-28.6}}, + color={0,0,127})); connect(TSupSetSig.y, economizer1.THeaSupSet) - annotation (Line(points={{-59,50},{-54,50},{-54,-16},{20,-16},{20,-28},{99,-28}}, + annotation (Line(points={{-58,50},{-54,50},{-54,-16},{20,-16},{20,-30.2},{99, + -30.2}}, color={0,0,127})); connect(fanSta.y, economizer1.uSupFan) - annotation (Line(points={{-59,-80},{20,-80},{20,-36},{99,-36}}, color={255,0,255})); + annotation (Line(points={{-58,-80},{20,-80},{20,-35.6},{99,-35.6}}, + color={255,0,255})); connect(freProSta.y, economizer1.uFreProSta) - annotation (Line(points={{-59,-120},{26,-120},{26,-42},{99,-42}}, color={255,127,0})); + annotation (Line(points={{-58,-120},{26,-120},{26,-39.6},{99,-39.6}}, + color={255,127,0})); connect(hOutBelowCutoff.y, economizer1.hOut) - annotation (Line(points={{-99,20},{-64,20},{-64,-12},{24,-12},{24,-22},{99,-22}}, + annotation (Line(points={{-98,20},{-64,20},{-64,-12},{24,-12},{24,-25.4},{99, + -25.4}}, color={0,0,127})); connect(hOutCut.y,economizer1.hCut) - annotation (Line(points={{-99,-20},{-20,-20},{-20,-24},{99,-24}}, color={0,0,127})); + annotation (Line(points={{-98,-20},{-20,-20},{-20,-27},{99,-27}}, color={0,0,127})); connect(opeMod.y, economizer1.uOpeMod) - annotation (Line(points={{-99,-100},{22,-100},{22,-38},{99,-38}}, color={255,127,0})); + annotation (Line(points={{-98,-100},{22,-100},{22,-37},{99,-37}}, color={255,127,0})); connect(zonSta.y, economizer1.uZonSta) - annotation (Line(points={{-99,-60},{24,-60},{24,-40},{99,-40}}, color={255,127,0})); + annotation (Line(points={{-98,-60},{24,-60},{24,-38.2},{99,-38.2}}, + color={255,127,0})); connect(VOutMinSetSig.y, economizer.VOutMinSet_flow) - annotation (Line(points={{-19,90},{0,90},{0,10},{19,10}}, color={0,0,127})); + annotation (Line(points={{-18,90},{0,90},{0,8.4},{19,8.4}}, + color={0,0,127})); connect(VOutMinSetSig.y, economizer1.VOutMinSet_flow) - annotation (Line(points={{-19,90},{14,90},{14,-30},{99,-30},{99,-30}}, color={0,0,127})); + annotation (Line(points={{-18,90},{14,90},{14,-30},{99,-30},{99,-31.6}}, + color={0,0,127})); connect(SupFanSpeSig.y, economizer.uSupFanSpe) - annotation (Line(points={{-19,50},{-2,50},{-2,8},{19,8}}, color={0,0,127})); + annotation (Line(points={{-18,50},{-2,50},{-2,7},{19,7}}, color={0,0,127})); connect(SupFanSpeSig.y, economizer1.uSupFanSpe) - annotation (Line(points={{-19,50},{78,50},{78,-32},{99,-32}}, color={0,0,127})); + annotation (Line(points={{-18,50},{78,50},{78,-33},{99,-33}}, color={0,0,127})); annotation ( experiment(StopTime=900.0, Tolerance=1e-06), __Dymola_Commands(file="modelica://Buildings/Resources/Scripts/Dymola/Controls/OBC/ASHRAE/G36_PR1/AHUs/SingleZone/VAV/Economizers/Validation/Controller_Mod_DamLim.mos" 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 e20abde1d5a..a654f4b1473 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 @@ -2,14 +2,18 @@ within Buildings.Controls.OBC.ASHRAE.G36_PR1.AHUs.SingleZone.VAV.SetPoints; block OutsideAirFlow "Output the minimum outdoor airflow rate setpoint for systems with a single zone" - parameter Real VOutPerAre_flow(final unit="m3/(s.m2)") = 3e-4 + parameter Real VOutPerAre_flow( + final unit="m3/(s.m2)") = 3e-4 "Outdoor air rate per unit area" annotation(Dialog(group="Nominal condition")); - parameter Modelica.SIunits.VolumeFlowRate VOutPerPer_flow = 2.5e-3 + parameter Real VOutPerPer_flow( + final unit="m3/s", + final quantity="VolumeFlowRate")= 2.5e-3 "Outdoor air rate per person" annotation(Dialog(group="Nominal condition")); - parameter Modelica.SIunits.Area AFlo - "Floor area" + parameter Real AFlo( + final unit="m2", + final quantity="Area") "Floor area" annotation(Dialog(group="Nominal condition")); parameter Boolean have_occSen "Set to true if zones have occupancy sensor"; @@ -19,13 +23,17 @@ block OutsideAirFlow "Zone air distribution effectiveness during heating"; parameter Real zonDisEffCoo(final unit="1") = 1.0 "Zone air distribution effectiveness during cooling"; - parameter Real uLow(final unit="K", - quantity="ThermodynamicTemperature") = -0.5 + parameter Real uLow( + final unit="K", + final displayUnit="K", + final quantity="TemperatureDifference") = -0.5 "If zone space temperature minus supply air temperature is less than uLow, then it should use heating supply air distribution effectiveness" annotation (Dialog(tab="Advanced")); - parameter Real uHig(final unit="K", - quantity="ThermodynamicTemperature") = 0.5 + parameter Real uHig( + final unit="K", + final displayUnit="K", + final quantity="TemperatureDifference") = 0.5 "If zone space temperature minus supply air temperature is more than uHig, then it should use cooling supply air distribution effectiveness" annotation (Dialog(tab="Advanced")); @@ -36,14 +44,14 @@ block OutsideAirFlow iconTransformation(extent={{-140,60},{-100,100}}))); Buildings.Controls.OBC.CDL.Interfaces.RealInput TZon( final unit="K", - displayUnit="degC", - quantity="ThermodynamicTemperature") "Measured zone air temperature" + final displayUnit="degC", + final quantity="ThermodynamicTemperature") "Measured zone air temperature" annotation (Placement(transformation(extent={{-240,-60},{-200,-20}}), iconTransformation(extent={{-140,-20},{-100,20}}))); Buildings.Controls.OBC.CDL.Interfaces.RealInput TDis( final unit="K", - displayUnit="degC", - quantity="ThermodynamicTemperature") "Measured discharge air temperature" + final displayUnit="degC", + final quantity="ThermodynamicTemperature") "Measured discharge air temperature" annotation (Placement(transformation(extent={{-240,-100},{-200,-60}}), iconTransformation(extent={{-140,-50},{-100,-10}}))); Buildings.Controls.OBC.CDL.Interfaces.IntegerInput uOpeMod @@ -61,7 +69,7 @@ block OutsideAirFlow Buildings.Controls.OBC.CDL.Interfaces.RealOutput VOutMinSet_flow( min=0, final unit="m3/s", - quantity="VolumeFlowRate") "Effective minimum outdoor airflow setpoint" + final quantity="VolumeFlowRate") "Effective minimum outdoor airflow setpoint" annotation (Placement(transformation(extent={{200,-20},{240,20}}), iconTransformation(extent={{100,-20},{140,20}}))); 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 17e7a3835a4..c87e8c2f370 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 @@ -1,11 +1,17 @@ within Buildings.Controls.OBC.ASHRAE.G36_PR1.AHUs.SingleZone.VAV.SetPoints; block Supply "Supply air set point for single zone VAV system" - parameter Modelica.SIunits.Temperature TSupSetMax + parameter Real TSupSetMax( + final unit="K", + final displayUnit="degC", + final quantity="ThermodynamicTemperature") "Maximum supply air temperature for heating" annotation (Dialog(group="Temperatures")); - parameter Modelica.SIunits.Temperature TSupSetMin + parameter Real TSupSetMin( + final unit="K", + final displayUnit="degC", + final quantity="ThermodynamicTemperature") "Minimum supply air temperature for cooling" annotation (Dialog(group="Temperatures")); @@ -59,9 +65,9 @@ block Supply "Supply air set point for single zone VAV system" Buildings.Controls.OBC.CDL.Interfaces.RealOutput y(min=0, max=1, unit="1") "Fan speed" annotation (Placement(transformation(extent={{100,-80},{140,-40}}))); - CDL.Interfaces.BooleanInput uFan "Supply fan status" annotation (Placement( - transformation(extent={{-140,-160},{-100,-120}}), iconTransformation( - extent={{-140,-120},{-100,-80}}))); + 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" annotation (Placement(transformation(extent={{72,-30},{92,-10}}))); CDL.Continuous.Sources.Constant fanOff(k=0) "Fan off status" diff --git a/Buildings/Controls/OBC/ASHRAE/G36_PR1/AHUs/SingleZone/VAV/Validation/CoolingCoil.mo b/Buildings/Controls/OBC/ASHRAE/G36_PR1/AHUs/SingleZone/VAV/Validation/CoolingCoil.mo index e6c8dfd4c96..b0cbabc2e45 100644 --- a/Buildings/Controls/OBC/ASHRAE/G36_PR1/AHUs/SingleZone/VAV/Validation/CoolingCoil.mo +++ b/Buildings/Controls/OBC/ASHRAE/G36_PR1/AHUs/SingleZone/VAV/Validation/CoolingCoil.mo @@ -1,6 +1,9 @@ within Buildings.Controls.OBC.ASHRAE.G36_PR1.AHUs.SingleZone.VAV.Validation; model CoolingCoil "Validation of cooling coil model" - final parameter Modelica.SIunits.Temperature TSupSet=291.15 + final parameter Real TSupSet( + final unit="K", + final displayUnit="degC", + final quantity="ThermodynamicTemperature")=291.15 "Supply air temperature setpoint"; Buildings.Controls.OBC.ASHRAE.G36_PR1.AHUs.SingleZone.VAV.CoolingCoil cooCoi( controllerTypeCooCoi=Buildings.Controls.OBC.CDL.Types.SimpleController.P, From 21358a1fc258a5db9e91822e3e3ea7e4d1b497e2 Mon Sep 17 00:00:00 2001 From: JayHuLBL Date: Fri, 27 Mar 2020 21:34:04 -0700 Subject: [PATCH 03/10] cleaned parameter declarations in package Generic, #1853 [ci skip] --- .../G36_PR1/Generic/FreezeProtectionMixedAir.mo | 14 +++++++++++--- .../G36_PR1/Generic/SetPoints/OperationMode.mo | 15 ++++++++++++--- .../G36_PR1/Generic/SetPoints/TrimAndRespond.mo | 10 ++++++++-- .../Generic/SetPoints/Validation/OperationMode.mo | 8 ++++++-- .../G36_PR1/Generic/SetPoints/ZoneStatus.mo | 13 ++++++++++++- .../Validation/FreezeProtectionMixedAir.mo | 10 ++++++---- 6 files changed, 55 insertions(+), 15 deletions(-) diff --git a/Buildings/Controls/OBC/ASHRAE/G36_PR1/Generic/FreezeProtectionMixedAir.mo b/Buildings/Controls/OBC/ASHRAE/G36_PR1/Generic/FreezeProtectionMixedAir.mo index a258693b1e6..1ff3b46fb98 100644 --- a/Buildings/Controls/OBC/ASHRAE/G36_PR1/Generic/FreezeProtectionMixedAir.mo +++ b/Buildings/Controls/OBC/ASHRAE/G36_PR1/Generic/FreezeProtectionMixedAir.mo @@ -6,19 +6,27 @@ block FreezeProtectionMixedAir "Freeze protection based on mixed air temperature "Type of controller"; parameter Real k(final unit="1/K")=0.1 "Gain"; - parameter Modelica.SIunits.Time Ti=120 "Time constant of integrator block"; + parameter Real Ti( + final unit="s", + final quantity="Time")= 120 "Time constant of integrator block"; - parameter Modelica.SIunits.Time Td=0.1 + parameter Real Td( + final unit="s", + final quantity="Time")= 0.1 "Time constant of derivative block" annotation (Dialog( enable=controllerType == Buildings.Controls.OBC.CDL.Types.SimpleController.PD or controllerType == Buildings.Controls.OBC.CDL.Types.SimpleController.PID)); - parameter Modelica.SIunits.Temperature TFreSet = 279.15 + parameter Real TFreSet( + final unit="K", + final displayUnit="degC", + final quantity="ThermodynamicTemperature")= 279.15 "Lower limit for mixed air temperature for freeze protection"; Buildings.Controls.OBC.CDL.Interfaces.RealInput TMix( final unit="K", + final displayUnit="degC", final quantity = "ThermodynamicTemperature") "Mixed air temperature measurement" annotation (Placement(transformation(extent={{-140,-20},{-100,20}}))); 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 ca14d71e22b..b95dfcf56b9 100644 --- a/Buildings/Controls/OBC/ASHRAE/G36_PR1/Generic/SetPoints/OperationMode.mo +++ b/Buildings/Controls/OBC/ASHRAE/G36_PR1/Generic/SetPoints/OperationMode.mo @@ -7,9 +7,15 @@ block OperationMode "Block that outputs the operation mode" parameter Integer numZon(min=1) "Number of zones"; parameter Real preWarCooTim(unit="s") = 10800 "Maximum cool-down or warm-up time"; - parameter Real TZonFreProOn(unit="K") = 277.55 + parameter Real TZonFreProOn( + final unit="K", + final displayUnit="degC", + final quantity="ThermodynamicTemperature") = 277.55 "Threshold zone temperature value to activate freeze protection mode"; - parameter Real TZonFreProOff(unit="K") = 280.35 + parameter Real TZonFreProOff( + final unit="K", + final displayUnit="degC", + final quantity="ThermodynamicTemperature") = 280.35 "Threshold zone temperature value to finish the freeze protection mode"; Buildings.Controls.OBC.CDL.Interfaces.BooleanInput uOcc @@ -17,7 +23,8 @@ block OperationMode "Block that outputs the operation mode" annotation (Placement(transformation(extent={{-300,310},{-260,350}}), iconTransformation(extent={{-140,100},{-100,140}}))); Buildings.Controls.OBC.CDL.Interfaces.RealInput tNexOcc( - final unit="s", quantity="Time") + final unit="s", + final quantity="Time") "Time to next occupied period" annotation (Placement(transformation(extent={{-300,270},{-260,310}}), iconTransformation(extent={{-140,80},{-100,120}}))); @@ -53,12 +60,14 @@ block OperationMode "Block that outputs the operation mode" iconTransformation(extent={{-140,-60},{-100,-20}}))); Buildings.Controls.OBC.CDL.Interfaces.RealInput TZonMax( final unit="K", + final displayUnit="degC", final quantity="ThermodynamicTemperature") "Maximum zone temperature" annotation (Placement(transformation(extent={{-300,-130},{-260,-90}}), iconTransformation(extent={{-140,-80},{-100,-40}}))); Buildings.Controls.OBC.CDL.Interfaces.RealInput TZonMin( final unit="K", + final displayUnit="degC", final quantity="ThermodynamicTemperature") "Minimum zone temperature" annotation (Placement(transformation(extent={{-300,-170},{-260,-130}}), 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 4367219bee2..7881281af29 100644 --- a/Buildings/Controls/OBC/ASHRAE/G36_PR1/Generic/SetPoints/TrimAndRespond.mo +++ b/Buildings/Controls/OBC/ASHRAE/G36_PR1/Generic/SetPoints/TrimAndRespond.mo @@ -3,8 +3,14 @@ block TrimAndRespond "Block to inplement trim and respond logic" parameter Real iniSet "Initial setpoint"; parameter Real minSet "Minimum setpoint"; parameter Real maxSet "Maximum setpoint"; - parameter Modelica.SIunits.Time delTim(min=100*1E-15) "Delay time"; - parameter Modelica.SIunits.Time samplePeriod(min=1E-3) + parameter Real delTim( + final unit="s", + final quantity="Time", + final min=100*1E-15) "Delay time"; + parameter Real samplePeriod( + final unit="s", + final quantity="Time", + final min=1E-3) "Sample period of component"; parameter Integer numIgnReq "Number of ignored requests"; parameter Real triAmo "Trim amount"; diff --git a/Buildings/Controls/OBC/ASHRAE/G36_PR1/Generic/SetPoints/Validation/OperationMode.mo b/Buildings/Controls/OBC/ASHRAE/G36_PR1/Generic/SetPoints/Validation/OperationMode.mo index 5d5aa1e9f46..a3f89733dfb 100644 --- a/Buildings/Controls/OBC/ASHRAE/G36_PR1/Generic/SetPoints/Validation/OperationMode.mo +++ b/Buildings/Controls/OBC/ASHRAE/G36_PR1/Generic/SetPoints/Validation/OperationMode.mo @@ -105,8 +105,12 @@ model OperationMode "Validate block for selecting operation mode" annotation (Placement(transformation(extent={{80,-210},{100,-190}}))); protected - final parameter Modelica.SIunits.Time occSta = 7*3600 "Occupancy start time"; - final parameter Modelica.SIunits.Time occEnd = 19*3600 "Occupancy end time"; + final parameter Real occSta( + final unit="s", + final quantity="Time") = 7*3600 "Occupancy start time"; + final parameter Real occEnd( + final unit="s", + final quantity="Time") = 19*3600 "Occupancy end time"; equation connect(ramp1.y, sin1.u) diff --git a/Buildings/Controls/OBC/ASHRAE/G36_PR1/Generic/SetPoints/ZoneStatus.mo b/Buildings/Controls/OBC/ASHRAE/G36_PR1/Generic/SetPoints/ZoneStatus.mo index 69ff1375a76..3cdef979f68 100644 --- a/Buildings/Controls/OBC/ASHRAE/G36_PR1/Generic/SetPoints/ZoneStatus.mo +++ b/Buildings/Controls/OBC/ASHRAE/G36_PR1/Generic/SetPoints/ZoneStatus.mo @@ -1,7 +1,11 @@ within Buildings.Controls.OBC.ASHRAE.G36_PR1.Generic.SetPoints; block ZoneStatus "Block that outputs zone temperature status" - parameter Modelica.SIunits.TemperatureDifference bouLim(min=0.5) = 1.1 + parameter Real bouLim( + final unit="K", + final displayUnit="K", + final quantity="TemperatureDifference", + final min=0.5) = 1.1 "Value limit to indicate the end of setback or setup mode"; parameter Boolean have_winSen=false "Check if the zone has window status sensor"; @@ -24,42 +28,49 @@ block ZoneStatus "Block that outputs zone temperature status" iconTransformation(extent={{-140,30},{-100,70}}))); Buildings.Controls.OBC.CDL.Interfaces.RealInput TZonHeaSetOcc( final unit="K", + final displayUnit="degC", final quantity="ThermodynamicTemperature") "Occupied heating setpoint temperature" annotation (Placement(transformation(extent={{-180,50},{-140,90}}), iconTransformation(extent={{-140,10},{-100,50}}))); Buildings.Controls.OBC.CDL.Interfaces.RealInput TZonCooSetOcc( final unit="K", + final displayUnit="degC", final quantity="ThermodynamicTemperature") "Occupied cooling setpoint temperature" annotation (Placement(transformation(extent={{-180,0},{-140,40}}), iconTransformation(extent={{-140,-10},{-100,30}}))); Buildings.Controls.OBC.CDL.Interfaces.RealInput TZonMax( final unit="K", + final displayUnit="degC", final quantity="ThermodynamicTemperature") "Maximum zone temperature in the zone group" annotation (Placement(transformation(extent={{-180,-40},{-140,0}}), iconTransformation(extent={{-140,-30},{-100,10}}))); Buildings.Controls.OBC.CDL.Interfaces.RealInput TZon( final unit="K", + final displayUnit="degC", final quantity="ThermodynamicTemperature") "Single zone temperature" annotation (Placement(transformation(extent={{-180,-80},{-140,-40}}), iconTransformation(extent={{-140,-50},{-100,-10}}))); Buildings.Controls.OBC.CDL.Interfaces.RealInput TZonMin( final unit="K", + final displayUnit="degC", final quantity="ThermodynamicTemperature") "Minimum zone temperature in the zone group" annotation (Placement(transformation(extent={{-180,-130},{-140,-90}}), iconTransformation(extent={{-140,-70},{-100,-30}}))); Buildings.Controls.OBC.CDL.Interfaces.RealInput TZonHeaSetUno( final unit="K", + final displayUnit="degC", final quantity="ThermodynamicTemperature") "Unoccupied heating setpoint temperature" annotation (Placement(transformation(extent={{-180,-170},{-140,-130}}), iconTransformation(extent={{-140,-90},{-100,-50}}))); Buildings.Controls.OBC.CDL.Interfaces.RealInput TZonCooSetUno( final unit="K", + final displayUnit="degC", final quantity="ThermodynamicTemperature") "Unoccupied cooling setpoint temperature" annotation (Placement(transformation(extent={{-180,-260},{-140,-220}}), diff --git a/Buildings/Controls/OBC/ASHRAE/G36_PR1/Generic/Validation/FreezeProtectionMixedAir.mo b/Buildings/Controls/OBC/ASHRAE/G36_PR1/Generic/Validation/FreezeProtectionMixedAir.mo index a54843faa2a..7c84299aa7c 100644 --- a/Buildings/Controls/OBC/ASHRAE/G36_PR1/Generic/Validation/FreezeProtectionMixedAir.mo +++ b/Buildings/Controls/OBC/ASHRAE/G36_PR1/Generic/Validation/FreezeProtectionMixedAir.mo @@ -2,8 +2,11 @@ within Buildings.Controls.OBC.ASHRAE.G36_PR1.Generic.Validation; model FreezeProtectionMixedAir "Validation model for the mixed air temperature based freeze protection block" - parameter Modelica.SIunits.Temperature TFreSet = 273.15 + 4 - "Freeze protection set point temperature"; + parameter Real TFreSet( + final unit="K", + final displayUnit="degC", + final quantity="ThermodynamicTemperature")= 273.15 + 4 + "Freeze protection set point temperature"; Buildings.Controls.OBC.ASHRAE.G36_PR1.Generic.FreezeProtectionMixedAir freProTMix(final TFreSet = TFreSet) annotation (Placement(transformation(extent={{0,0},{20,20}}))); @@ -18,8 +21,7 @@ model FreezeProtectionMixedAir equation connect(sin1.y, freProTMix.TMix) - annotation (Line(points={{-19,11},{-10,11},{-10,10},{-1,10}}, - color={0,0,127})); + annotation (Line(points={{-18,11},{-10,11},{-10,10},{-2,10}}, color={0,0,127})); annotation ( experiment(StopTime=1800.0, Tolerance=1e-06), __Dymola_Commands(file="modelica://Buildings/Resources/Scripts/Dymola/Controls/OBC/ASHRAE/G36_PR1/Generic/Validation/FreezeProtectionMixedAir.mos" From 2e887b343a15978c96322d141fc485d2cead42a6 Mon Sep 17 00:00:00 2001 From: JayHuLBL Date: Fri, 27 Mar 2020 22:10:44 -0700 Subject: [PATCH 04/10] cleaned parameter declarations in package TerminalUnits, #1853 [ci skip] --- .../G36_PR1/TerminalUnits/Controller.mo | 169 +++++++++++------- .../G36_PR1/TerminalUnits/ModeAndSetPoints.mo | 103 ++++++++--- .../TerminalUnits/Reheat/DamperValves.mo | 36 +++- .../Reheat/SetPoints/ActiveAirFlow.mo | 27 ++- .../TerminalUnits/Reheat/SystemRequests.mo | 40 ++++- .../SetPoints/ZoneTemperatures.mo | 54 ++++-- 6 files changed, 312 insertions(+), 117 deletions(-) diff --git a/Buildings/Controls/OBC/ASHRAE/G36_PR1/TerminalUnits/Controller.mo b/Buildings/Controls/OBC/ASHRAE/G36_PR1/TerminalUnits/Controller.mo index 8f53be895f4..a40a86eafc7 100644 --- a/Buildings/Controls/OBC/ASHRAE/G36_PR1/TerminalUnits/Controller.mo +++ b/Buildings/Controls/OBC/ASHRAE/G36_PR1/TerminalUnits/Controller.mo @@ -1,12 +1,17 @@ within Buildings.Controls.OBC.ASHRAE.G36_PR1.TerminalUnits; block Controller "Controller for room VAV box" - parameter Modelica.SIunits.Time samplePeriod + parameter Real samplePeriod( + final unit="s", + final quantity="Time") "Sample period of component, set to the same value as the trim and respond that process yPreSetReq"; - parameter Modelica.SIunits.VolumeFlowRate V_flow_nominal + parameter Real V_flow_nominal( + final unit="m3/s", + final quantity="VolumeFlowRate") "Volume flow rate of this thermal zone"; - parameter Modelica.SIunits.Area AFlo "Area of the zone"; - + parameter Real AFlo( + final unit="m2", + final quantity="Area") "Area of the zone"; parameter Buildings.Controls.OBC.CDL.Types.SimpleController controllerTypeCoo= Buildings.Controls.OBC.CDL.Types.SimpleController.PI "Type of controller" @@ -16,13 +21,17 @@ block Controller "Controller for room VAV box" "Gain for cooling control loop signal" annotation(Dialog(group="Cooling loop signal")); - parameter Modelica.SIunits.Time TiCoo=900 + parameter Real TiCoo( + final unit="s", + final quantity="Time")=900 "Time constant of integrator block for cooling control loop signal" annotation(Dialog(group="Cooling loop signal", enable=controllerTypeCoo == Buildings.Controls.OBC.CDL.Types.SimpleController.PI or controllerTypeCoo == Buildings.Controls.OBC.CDL.Types.SimpleController.PID)); - parameter Modelica.SIunits.Time TdCoo=0.1 + parameter Real TdCoo( + final unit="s", + final quantity="Time")=0.1 "Time constant of derivative block for cooling control loop signal" annotation (Dialog(group="Cooling loop signal", enable=controllerTypeCoo == Buildings.Controls.OBC.CDL.Types.SimpleController.PD @@ -36,13 +45,17 @@ block Controller "Controller for room VAV box" "Gain for heating control loop signal" annotation(Dialog(group="Heating loop signal")); - parameter Modelica.SIunits.Time TiHea=900 + parameter Real TiHea( + final unit="s", + final quantity="Time")=900 "Time constant of integrator block for heating control loop signal" annotation(Dialog(group="Heating loop signal", enable=controllerTypeHea == Buildings.Controls.OBC.CDL.Types.SimpleController.PI or controllerTypeHea == Buildings.Controls.OBC.CDL.Types.SimpleController.PID)); - parameter Modelica.SIunits.Time TdHea=0.1 + parameter Real TdHea( + final unit="s", + final quantity="Time")=0.1 "Time constant of derivative block for heating control loop signal" annotation (Dialog(group="Heating loop signal", enable=controllerTypeHea == Buildings.Controls.OBC.CDL.Types.SimpleController.PD @@ -57,13 +70,17 @@ block Controller "Controller for room VAV box" "Gain of controller for valve control" annotation (Dialog(group="Valve")); - parameter Modelica.SIunits.Time TiVal=300 + parameter Real TiVal( + final unit="s", + final quantity="Time")=300 "Time constant of integrator block for valve control" annotation(Dialog(group="Valve", enable=controllerTypeVal == Buildings.Controls.OBC.CDL.Types.SimpleController.PI or controllerTypeVal == Buildings.Controls.OBC.CDL.Types.SimpleController.PID)); - parameter Modelica.SIunits.Time TdVal=0.1 + parameter Real TdVal( + final unit="s", + final quantity="Time")=0.1 "Time constant of derivative block for valve control" annotation (Dialog(group="Valve", enable=controllerTypeVal == Buildings.Controls.OBC.CDL.Types.SimpleController.PD @@ -78,13 +95,17 @@ block Controller "Controller for room VAV box" "Gain of controller for damper control" annotation (Dialog(group="Damper")); - parameter Modelica.SIunits.Time TiDam=300 + parameter Real TiDam( + final unit="s", + final quantity="Time")=300 "Time constant of integrator block for damper control" annotation (Dialog(group="Damper", enable=controllerTypeDam == Buildings.Controls.OBC.CDL.Types.SimpleController.PI or controllerTypeDam == Buildings.Controls.OBC.CDL.Types.SimpleController.PID)); - parameter Modelica.SIunits.Time TdDam=0.1 + parameter Real TdDam( + final unit="s", + final quantity="Time")=0.1 "Time constant of derivative block for damper control" annotation (Dialog(group="Damper", enable=controllerTypeDam == Buildings.Controls.OBC.CDL.Types.SimpleController.PD @@ -102,19 +123,27 @@ block Controller "Controller for room VAV box" "Set to true if the zone has CO2 sensor" annotation (Evaluate=true, Dialog(tab="Airflow setpoint", group="Zone sensors")); - parameter Modelica.SIunits.VolumeFlowRate VDisCooSetMax_flow=V_flow_nominal + parameter Real VDisCooSetMax_flow( + final unit="m3/s", + final quantity="VolumeFlowRate")=V_flow_nominal "Zone maximum cooling airflow setpoint" annotation (Evaluate=true, Dialog(tab="Airflow setpoint", group="Nominal conditions")); - parameter Modelica.SIunits.VolumeFlowRate VDisSetMin_flow=0.15*V_flow_nominal + parameter Real VDisSetMin_flow( + final unit="m3/s", + final quantity="VolumeFlowRate")=0.15*V_flow_nominal "Zone minimum airflow setpoint" annotation (Evaluate=true, Dialog(tab="Airflow setpoint", group="Nominal conditions")); - parameter Modelica.SIunits.VolumeFlowRate VDisHeaSetMax_flow=V_flow_nominal + parameter Real VDisHeaSetMax_flow( + final unit="m3/s", + final quantity="VolumeFlowRate")=V_flow_nominal "Zone maximum heating airflow setpoint" annotation (Evaluate=true, Dialog(tab="Airflow setpoint", group="Nominal conditions")); - parameter Modelica.SIunits.VolumeFlowRate VDisConMin_flow=0.1*V_flow_nominal + parameter Real VDisConMin_flow( + final unit="m3/s", + final quantity="VolumeFlowRate")=0.1*V_flow_nominal "VAV box controllable minimum" annotation (Evaluate=true, Dialog(tab="Airflow setpoint", group="Nominal conditions")); @@ -122,18 +151,26 @@ block Controller "Controller for room VAV box" "Outdoor air rate per unit area" annotation (Evaluate=true, Dialog(tab="Airflow setpoint", group="Nominal conditions")); - parameter Modelica.SIunits.VolumeFlowRate VOutPerPer_flow=2.5e-3 + parameter Real VOutPerPer_flow( + final unit="m3/s", + final quantity="VolumeFlowRate")=2.5e-3 "Outdoor air rate per person" annotation (Evaluate=true, Dialog(tab="Airflow setpoint", group="Nominal conditions")); parameter Real CO2Set=894 "CO2 setpoint in ppm" annotation (Evaluate=true, Dialog(tab="Airflow setpoint", group="Nominal conditions")); - parameter Modelica.SIunits.TemperatureDifference dTDisZonSetMax=11 + parameter Real dTDisZonSetMax( + final unit="K", + final displayUnit="K", + final quantity="TemperatureDifference")=11 "Zone maximum discharge air temperature above heating setpoint" annotation (Evaluate=true, Dialog(tab="Damper and valve", group="Parameters")); - parameter Modelica.SIunits.Temperature TDisMin=283.15 + parameter Real TDisMin( + final unit="K", + final displayUnit="degC", + final quantity="ThermodynamicTemperature")=283.15 "Lowest discharge air temperature" annotation (Evaluate=true, Dialog(tab="Damper and valve", group="Parameters")); @@ -145,35 +182,53 @@ block Controller "Controller for room VAV box" "Flag, true if there is a boiler plant" annotation (Evaluate=true, Dialog(tab="System requests", group="Parameters")); - parameter Modelica.SIunits.TemperatureDifference errTZonCoo_1=2.8 + parameter Real errTZonCoo_1( + final unit="K", + final displayUnit="K", + final quantity="TemperatureDifference")=2.8 "Limit value of difference between zone temperature and cooling setpoint for generating 3 cooling SAT reset requests" annotation (Evaluate=true, Dialog(tab="System requests", group="Parameters")); - parameter Modelica.SIunits.TemperatureDifference errTZonCoo_2=1.7 + parameter Real errTZonCoo_2( + final unit="K", + final displayUnit="K", + final quantity="TemperatureDifference")=1.7 "Limit value of difference between zone temperature and cooling setpoint for generating 2 cooling SAT reset requests" annotation (Evaluate=true, Dialog(tab="System requests", group="Parameters")); - parameter Modelica.SIunits.TemperatureDifference errTDis_1=17 + parameter Real errTDis_1( + final unit="K", + final displayUnit="K", + final quantity="TemperatureDifference")=17 "Limit value of difference between discharge air temperature and its setpoint for generating 3 hot water reset requests" annotation (Evaluate=true, Dialog(tab="System requests", group="Parameters")); - parameter Modelica.SIunits.TemperatureDifference errTDis_2=8.3 + parameter Real errTDis_2( + final unit="K", + final displayUnit="K", + final quantity="TemperatureDifference")=8.3 "Limit value of difference between discharge air temperature and its setpoint for generating 2 hot water reset requests" annotation (Evaluate=true, Dialog(tab="System requests", group="Parameters")); - parameter Modelica.SIunits.Time durTimTem=120 + parameter Real durTimTem( + final unit="s", + final quantity="Time")=120 "Duration time of zone temperature exceeds setpoint" annotation (Evaluate=true, Dialog(tab="System requests", group="Duration times")); - parameter Modelica.SIunits.Time durTimFlo=60 + parameter Real durTimFlo( + final unit="s", + final quantity="Time")=60 "Duration time of airflow rate less than setpoint" annotation (Evaluate=true, Dialog(tab="System requests", group="Duration times")); - parameter Modelica.SIunits.Time durTimDisAir=300 + parameter Real durTimDisAir( + final unit="s", + final quantity="Time")=300 "Duration time of discharge air temperature is less than setpoint" annotation (Evaluate=true, Dialog(tab="System requests", group="Duration times")); @@ -181,46 +236,41 @@ block Controller "Controller for room VAV box" Buildings.Controls.OBC.CDL.Interfaces.RealInput TZonHeaSet( final quantity="ThermodynamicTemperature", final unit = "K", - displayUnit = "degC", - min=0) + final displayUnit = "degC") "Setpoint temperature for room for heating" annotation (Placement(transformation(extent={{-180,140},{-140,180}}), iconTransformation(extent={{-140,70},{-100,110}}))); Buildings.Controls.OBC.CDL.Interfaces.RealInput TZonCooSet( final quantity="ThermodynamicTemperature", final unit = "K", - displayUnit = "degC", - min=0) + final displayUnit = "degC") "Setpoint temperature for room for cooling" annotation (Placement(transformation(extent={{-180,100},{-140,140}}), iconTransformation(extent={{-140,50},{-100,90}}))); Buildings.Controls.OBC.CDL.Interfaces.RealInput TZon( final quantity="ThermodynamicTemperature", final unit = "K", - displayUnit = "degC", - min=0) + final displayUnit = "degC") "Measured room temperature" annotation (Placement(transformation(extent={{-180,-40},{-140,0}}), iconTransformation(extent={{-140,-30},{-100,10}}))); Buildings.Controls.OBC.CDL.Interfaces.RealInput TDis( final quantity="ThermodynamicTemperature", final unit = "K", - displayUnit = "degC", - min=0) + final displayUnit = "degC") "Measured supply air temperature after heating coil" annotation (Placement(transformation(extent={{-180,-120},{-140,-80}}), iconTransformation(extent={{-140,-70},{-100,-30}}))); Buildings.Controls.OBC.CDL.Interfaces.RealInput VDis_flow( final unit="m3/s", - quantity="VolumeFlowRate") + final quantity="VolumeFlowRate") "Measured discharge airflow rate" annotation (Placement(transformation(extent={{-180,-80},{-140,-40}}), iconTransformation(extent={{-140,-50},{-100,-10}}))); Buildings.Controls.OBC.CDL.Interfaces.RealInput TSupAHU( final quantity="ThermodynamicTemperature", final unit = "K", - displayUnit = "degC", - min=0) + final displayUnit = "degC") "AHU supply air temperature" annotation (Placement(transformation(extent={{-180,-150},{-140,-110}}), iconTransformation(extent={{-140,-90},{-100,-50}}))); @@ -241,15 +291,15 @@ block Controller "Controller for room VAV box" annotation (Placement(transformation(extent={{-180,-190},{-140,-150}}), iconTransformation(extent={{-140,-110},{-100,-70}}))); Buildings.Controls.OBC.CDL.Interfaces.RealOutput yVal( - min=0, - max=1, + final min=0, + final max=1, final unit="1") "Signal for heating coil valve" annotation (Placement(transformation(extent={{140,-40},{180,0}}), iconTransformation(extent={{100,-10},{140,30}}))); Buildings.Controls.OBC.CDL.Interfaces.RealOutput yDam( - min=0, - max=1, + final min=0, + final max=1, final unit="1") "Signal for VAV damper" annotation (Placement(transformation(extent={{140,60},{180,100}}), @@ -362,9 +412,9 @@ equation annotation (Line(points={{42,-14},{120,-14},{120,-20},{160,-20}}, color={0,0,127})); connect(damVal.VDis_flow, VDis_flow) - annotation (Line(points={{34,-24},{34,-60},{-160,-60}},color={0,0,127})); + annotation (Line(points={{34,-22},{34,-60},{-160,-60}},color={0,0,127})); connect(damVal.TDis, TDis) - annotation (Line(points={{26,-24},{26,-100},{-160,-100}}, + annotation (Line(points={{26,-22},{26,-100},{-160,-100}}, color={0,0,127})); connect(sysReq.TDis, TDis) annotation (Line(points={{78,-96},{26,-96},{26,-100},{-160,-100}}, @@ -376,38 +426,37 @@ equation annotation (Line(points={{42,-14},{50,-14},{50,-98},{78,-98}}, color={0,0,127})); connect(TZon, damVal.TZon) annotation (Line(points={{-160,-20},{-40,-20},{-40, - -15},{18,-15}}, + -14},{18,-14}}, color={0,0,127})); - connect(damVal.TSup, TSupAHU) annotation (Line(points={{18,-9},{-80,-9},{-80,-130}, + connect(damVal.TSup, TSupAHU) annotation (Line(points={{18,-8},{-80,-8},{-80,-130}, {-160,-130}},color={0,0,127})); connect(actAirSet.VActCooMax_flow, damVal.VActCooMax_flow) annotation (Line(points={{-18,78}, - {0,78},{0,-5},{18,-5}}, color={0,0,127})); + {0,78},{0,-4},{18,-4}}, color={0,0,127})); connect(actAirSet.VActCooMin_flow, damVal.VActCooMin_flow) annotation (Line(points={{-18,75}, - {-2,75},{-2,-3},{18,-3}}, color={0,0,127})); + {-2,75},{-2,-2},{18,-2}}, color={0,0,127})); connect(actAirSet.VActMin_flow, damVal.VActMin_flow) annotation (Line(points={{-18,72}, - {-4,72},{-4,-7},{18,-7}}, color={0,0,127})); + {-4,72},{-4,-6},{18,-6}}, color={0,0,127})); connect(actAirSet.VActHeaMin_flow, damVal.VActHeaMin_flow) annotation (Line(points={{-18,69}, - {-6,69},{-6,-17},{18,-17}}, color={0,0,127})); + {-6,69},{-6,-16},{18,-16}}, color={0,0,127})); connect(actAirSet.VActHeaMax_flow, damVal.VActHeaMax_flow) annotation (Line(points={{-18,66}, - {-8,66},{-8,-19.2},{18,-19.2}}, - color={0,0,127})); + {-8,66},{-8,-18},{18,-18}}, color={0,0,127})); connect(damVal.THeaSet, TZonHeaSet) - annotation (Line(points={{18,-11},{-124,-11},{-124,160},{-160,160}}, + annotation (Line(points={{18,-10},{-124,-10},{-124,160},{-160,160}}, color={0,0,127})); connect(actAirSet.VActCooMax_flow, damVal.VActCooMax_flow) - annotation (Line(points={{-18,78},{0,78},{0,-5},{18,-5}}, + annotation (Line(points={{-18,78},{0,78},{0,-4},{18,-4}}, color={0,0,127})); connect(actAirSet.VActCooMin_flow, damVal.VActCooMin_flow) - annotation (Line(points={{-18,75},{-2,75},{-2,-3},{18,-3}}, + annotation (Line(points={{-18,75},{-2,75},{-2,-2},{18,-2}}, color={0,0,127})); connect(actAirSet.VActMin_flow, damVal.VActMin_flow) - annotation (Line(points={{-18,72},{-4,72},{-4,-7},{18,-7}}, + annotation (Line(points={{-18,72},{-4,72},{-4,-6},{18,-6}}, color={0,0,127})); connect(actAirSet.VActHeaMin_flow, damVal.VActHeaMin_flow) - annotation (Line(points={{-18,69},{-6,69},{-6,-17},{18,-17}}, + annotation (Line(points={{-18,69},{-6,69},{-6,-16},{18,-16}}, color={0,0,127})); connect(actAirSet.VActHeaMax_flow, damVal.VActHeaMax_flow) - annotation (Line(points={{-18,66},{-8,66},{-8,-19.2},{18,-19.2}}, + annotation (Line(points={{-18,66},{-8,66},{-8,-18},{18,-18}}, color={0,0,127})); connect(actAirSet.uOpeMod, uOpeMod) annotation (Line(points={{-42,78},{-112,78},{-112,-170},{-160,-170}}, @@ -438,16 +487,16 @@ equation annotation (Line(points={{-160,-20},{-122,-20},{-122,100},{-100,100}, {-100,108}}, color={0,0,127})); connect(conCooLoo.y, damVal.uCoo) - annotation (Line(points={{-88,120},{8,120},{8,-1},{18,-1}}, + annotation (Line(points={{-88,120},{8,120},{8,0},{18,0}}, color={0,0,127})); connect(conHeaLoo.y, damVal.uHea) - annotation (Line(points={{-88,160},{12,160},{12,-13},{18,-13}}, + annotation (Line(points={{-88,160},{12,160},{12,-12},{18,-12}}, color={0,0,127})); connect(conCooLoo.y, sysReq.uCoo) annotation (Line(points={{-88,120},{8,120},{8,-86},{78,-86}}, color={0,0,127})); - connect(damVal.uOpeMod, uOpeMod) annotation (Line(points={{18,-21.2},{-112,-21.2}, + connect(damVal.uOpeMod, uOpeMod) annotation (Line(points={{18,-20},{-112,-20}, {-112,-170},{-160,-170}}, color={255,127,0})); connect(conIntUn.y, isUnOcc.u1) diff --git a/Buildings/Controls/OBC/ASHRAE/G36_PR1/TerminalUnits/ModeAndSetPoints.mo b/Buildings/Controls/OBC/ASHRAE/G36_PR1/TerminalUnits/ModeAndSetPoints.mo index b21498006f1..a56eb63659a 100644 --- a/Buildings/Controls/OBC/ASHRAE/G36_PR1/TerminalUnits/ModeAndSetPoints.mo +++ b/Buildings/Controls/OBC/ASHRAE/G36_PR1/TerminalUnits/ModeAndSetPoints.mo @@ -2,27 +2,52 @@ within Buildings.Controls.OBC.ASHRAE.G36_PR1.TerminalUnits; block ModeAndSetPoints "Output zone setpoint with operation mode selection" - parameter Modelica.SIunits.Temperature TZonHeaOn=293.15 + parameter Real TZonHeaOn( + final unit="K", + final displayUnit="degC", + final quantity="ThermodynamicTemperature")=293.15 "Heating setpoint during on"; - parameter Modelica.SIunits.Temperature TZonHeaOff=285.15 + parameter Real TZonHeaOff( + final unit="K", + final displayUnit="degC", + final quantity="ThermodynamicTemperature")=285.15 "Heating setpoint during off"; - parameter Modelica.SIunits.Temperature TZonCooOn=297.15 + parameter Real TZonCooOn( + final unit="K", + final displayUnit="degC", + final quantity="ThermodynamicTemperature")=297.15 "Cooling setpoint during on"; - parameter Modelica.SIunits.Temperature TZonCooOff=303.15 + parameter Real TZonCooOff( + final unit="K", + final displayUnit="degC", + final quantity="ThermodynamicTemperature")=303.15 "Cooling setpoint during off"; - parameter Modelica.SIunits.Time preWarCooTim=10800 + parameter Real preWarCooTim( + final unit="s", + final quantity="Time")=10800 "Maximum cool-down/warm-up time" annotation (Evaluate=true, Dialog(tab="Operation mode", group="Parameters")); - parameter Modelica.SIunits.TemperatureDifference bouLim=1.1 + parameter Real bouLim( + final unit="K", + final displayUnit="K", + final quantity="TemperatureDifference")=1.1 "Value limit to indicate the end of setback/setup mode" annotation (Evaluate=true, Dialog(tab="Operation mode", group="Parameters")); - parameter Modelica.SIunits.Temperature TZonFreProOn=277.55 + parameter Real TZonFreProOn( + final unit="K", + final displayUnit="degC", + final quantity="ThermodynamicTemperature")=277.55 "Threshold zone temperature value to activate freeze protection mode" annotation (Evaluate=true, Dialog(tab="Operation mode", group="Parameters")); - parameter Modelica.SIunits.Temperature TZonFreProOff=280.35 + parameter Real TZonFreProOff( + final unit="K", + final displayUnit="degC", + final quantity="ThermodynamicTemperature")=280.35 "Threshold zone temperature value to finish the freeze protection mode" annotation (Evaluate=true, Dialog(tab="Operation mode", group="Parameters")); - parameter Modelica.SIunits.Time warCooTim=1800 + parameter Real warCooTim( + final unit="s", + final quantity="Time")=1800 "Defined cool-down/warm-up time" annotation (Evaluate=true, Dialog(tab="Operation mode", group="Test setting")); parameter Boolean have_occSen=false @@ -43,40 +68,76 @@ block ModeAndSetPoints parameter Boolean ignDemLim=true "Flag, set to true to exempt individual zone from demand limit setpoint adjustment" annotation (Evaluate=true, Dialog(tab="Setpoint adjust", group="Adjustable settings")); - parameter Modelica.SIunits.Temperature TZonCooOnMax=300.15 + parameter Real TZonCooOnMax( + final unit="K", + final displayUnit="degC", + final quantity="ThermodynamicTemperature")=300.15 "Maximum cooling setpoint during on" annotation (Evaluate=true, Dialog(tab="Setpoint adjust", group="Limits")); - parameter Modelica.SIunits.Temperature TZonCooOnMin=295.15 + parameter Real TZonCooOnMin( + final unit="K", + final displayUnit="degC", + final quantity="ThermodynamicTemperature")=295.15 "Minimum cooling setpoint during on" annotation (Evaluate=true, Dialog(tab="Setpoint adjust", group="Limits")); - parameter Modelica.SIunits.Temperature TZonHeaOnMax=295.15 + parameter Real TZonHeaOnMax( + final unit="K", + final displayUnit="degC", + final quantity="ThermodynamicTemperature")=295.15 "Maximum heating setpoint during on" annotation (Evaluate=true, Dialog(tab="Setpoint adjust", group="Limits")); - parameter Modelica.SIunits.Temperature TZonHeaOnMin=291.15 + parameter Real TZonHeaOnMin( + final unit="K", + final displayUnit="degC", + final quantity="ThermodynamicTemperature")=291.15 "Minimum heating setpoint during on" annotation (Evaluate=true, Dialog(tab="Setpoint adjust", group="Limits")); - parameter Modelica.SIunits.Temperature TZonCooSetWinOpe=322.15 + parameter Real TZonCooSetWinOpe( + final unit="K", + final displayUnit="degC", + final quantity="ThermodynamicTemperature")=322.15 "Cooling setpoint when window is open" annotation (Evaluate=true, Dialog(tab="Setpoint adjust", group="Limits")); - parameter Modelica.SIunits.Temperature TZonHeaSetWinOpe=277.15 + parameter Real TZonHeaSetWinOpe( + final unit="K", + final displayUnit="degC", + final quantity="ThermodynamicTemperature")=277.15 "Heating setpoint when window is open" annotation (Evaluate=true, Dialog(tab="Setpoint adjust", group="Limits")); - parameter Modelica.SIunits.TemperatureDifference incTSetDem_1=0.56 + parameter Real incTSetDem_1( + final unit="K", + final displayUnit="K", + final quantity="TemperatureDifference")=0.56 "Cooling setpoint increase value when cooling demand limit level 1 is imposed" annotation (Evaluate=true, Dialog(tab="Setpoint adjust", group="Demands settings")); - parameter Modelica.SIunits.TemperatureDifference incTSetDem_2=1.1 + parameter Real incTSetDem_2( + final unit="K", + final displayUnit="K", + final quantity="TemperatureDifference")=1.1 "Cooling setpoint increase value when cooling demand limit level 2 is imposed" annotation (Evaluate=true, Dialog(tab="Setpoint adjust", group="Demands settings")); - parameter Modelica.SIunits.TemperatureDifference incTSetDem_3=2.2 + parameter Real incTSetDem_3( + final unit="K", + final displayUnit="K", + final quantity="TemperatureDifference")=2.2 "Cooling setpoint increase value when cooling demand limit level 3 is imposed" annotation (Evaluate=true, Dialog(tab="Setpoint adjust", group="Demands settings")); - parameter Modelica.SIunits.TemperatureDifference decTSetDem_1=0.56 + parameter Real decTSetDem_1( + final unit="K", + final displayUnit="K", + final quantity="TemperatureDifference")=0.56 "Heating setpoint decrease value when heating demand limit level 1 is imposed" annotation (Evaluate=true, Dialog(tab="Setpoint adjust", group="Demands settings")); - parameter Modelica.SIunits.TemperatureDifference decTSetDem_2=1.1 + parameter Real decTSetDem_2( + final unit="K", + final displayUnit="K", + final quantity="TemperatureDifference")=1.1 "Heating setpoint decrease value when heating demand limit level 2 is imposed" annotation (Evaluate=true, Dialog(tab="Setpoint adjust", group="Demands settings")); - parameter Modelica.SIunits.TemperatureDifference decTSetDem_3=2.2 + parameter Real decTSetDem_3( + final unit="K", + final displayUnit="K", + final quantity="TemperatureDifference")=2.2 "Heating setpoint decrease value when heating demand limit level 3 is imposed" annotation (Evaluate=true, Dialog(tab="Setpoint adjust", group="Demands settings")); parameter Integer cooDemLimLevCon=Buildings.Controls.OBC.ASHRAE.G36_PR1.Types.DemandLimitLevels.cooling0 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 499a18f0362..31492ae0d73 100644 --- a/Buildings/Controls/OBC/ASHRAE/G36_PR1/TerminalUnits/Reheat/DamperValves.mo +++ b/Buildings/Controls/OBC/ASHRAE/G36_PR1/TerminalUnits/Reheat/DamperValves.mo @@ -2,9 +2,15 @@ within Buildings.Controls.OBC.ASHRAE.G36_PR1.TerminalUnits.Reheat; block DamperValves "Output signals for controlling VAV reheat box damper and valve position" - parameter Modelica.SIunits.TemperatureDifference dTDisZonSetMax=11 + parameter Real dTDisZonSetMax( + final unit="K", + final displayUnit="K", + final quantity="TemperatureDifference")=11 "Zone maximum discharge air temperature above heating setpoint"; - parameter Modelica.SIunits.Temperature TDisMin=283.15 + parameter Real TDisMin( + final unit="K", + final displayUnit="degC", + final quantity="ThermodynamicTemperature")=283.15 "Lowest discharge air temperature"; parameter Buildings.Controls.OBC.CDL.Types.SimpleController controllerTypeVal= @@ -16,13 +22,17 @@ block DamperValves "Gain of controller for valve control" annotation(Dialog(group="Valve")); - parameter Modelica.SIunits.Time TiVal=300 + parameter Real TiVal( + final unit="s", + final quantity="Time")=300 "Time constant of integrator block for valve control" annotation(Dialog(group="Valve", enable=controllerTypeVal == Buildings.Controls.OBC.CDL.Types.SimpleController.PI or controllerTypeVal == Buildings.Controls.OBC.CDL.Types.SimpleController.PID)); - parameter Modelica.SIunits.Time TdVal=0.1 + parameter Real TdVal( + final unit="s", + final quantity="Time")=0.1 "Time constant of derivative block for valve control" annotation (Dialog(group="Valve", enable=controllerTypeVal == Buildings.Controls.OBC.CDL.Types.SimpleController.PD @@ -37,19 +47,26 @@ block DamperValves "Gain of controller for damper control" annotation(Dialog(group="Damper")); - parameter Modelica.SIunits.Time TiDam=300 + parameter Real TiDam( + final unit="s", + final quantity="Time")=300 "Time constant of integrator block for damper control" annotation(Dialog(group="Damper", enable=controllerTypeDam == Buildings.Controls.OBC.CDL.Types.SimpleController.PI or controllerTypeDam == Buildings.Controls.OBC.CDL.Types.SimpleController.PID)); - parameter Modelica.SIunits.Time TdDam=0.1 + parameter Real TdDam( + final unit="s", + final quantity="Time")=0.1 "Time constant of derivative block for damper control" annotation (Dialog(group="Damper", enable=controllerTypeDam == Buildings.Controls.OBC.CDL.Types.SimpleController.PD or controllerTypeDam == Buildings.Controls.OBC.CDL.Types.SimpleController.PID)); - parameter Modelica.SIunits.VolumeFlowRate V_flow_nominal(min=1E-10) + parameter Real V_flow_nominal( + final unit="m3/s", + final quantity="VolumeFlowRate", + final min=1E-10) "Nominal volume flow rate, used to normalize control error" annotation(Dialog(group="Damper")); @@ -111,24 +128,28 @@ block DamperValves iconTransformation(extent={{-20,-20},{20,20}},rotation=90,origin={40,-120}))); Buildings.Controls.OBC.CDL.Interfaces.RealInput TSup( final unit="K", + final displayUnit="degC", final quantity="ThermodynamicTemperature") "Supply air temperature from central air handler" annotation (Placement(transformation(extent={{-360,-50},{-320,-10}}), iconTransformation(extent={{-140,0},{-100,40}}))); Buildings.Controls.OBC.CDL.Interfaces.RealInput THeaSet( final unit="K", + final displayUnit="degC", final quantity="ThermodynamicTemperature") "Zone heating setpoint temperature" annotation (Placement(transformation(extent={{-360,-80},{-320,-40}}), iconTransformation(extent={{-140,-20},{-100,20}}))); Buildings.Controls.OBC.CDL.Interfaces.RealInput TZon( final unit="K", + final displayUnit="degC", final quantity="ThermodynamicTemperature") "Measured zone temperature" annotation (Placement(transformation(extent={{-360,-270},{-320,-230}}), iconTransformation(extent={{-140,-60},{-100,-20}}))); Buildings.Controls.OBC.CDL.Interfaces.RealInput TDis( final unit="K", + final displayUnit="degC", final quantity="ThermodynamicTemperature") "Measured discharge air temperature" annotation (Placement(transformation(extent={{-360,110},{-320,150}}), @@ -159,6 +180,7 @@ block DamperValves iconTransformation(extent={{100,60},{140,100}}))); Buildings.Controls.OBC.CDL.Interfaces.RealOutput TDisHeaSet( final unit="K", + final displayUnit="degC", final quantity="ThermodynamicTemperature") "Discharge airflow setpoint temperature for heating" annotation (Placement(transformation(extent={{320,-160},{360,-120}}), 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 62b8c571a76..406e9ce98a2 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 @@ -11,24 +11,37 @@ block ActiveAirFlow parameter Boolean have_CO2Sen "Set to true if the zone has CO2 sensor" annotation(Dialog(group="Zone sensors")); - parameter Modelica.SIunits.VolumeFlowRate VDisCooSetMax_flow + parameter Real VDisCooSetMax_flow( + final unit="m3/s", + final quantity="VolumeFlowRate") "Zone maximum cooling airflow setpoint" annotation(Dialog(group="Nominal condition")); - parameter Modelica.SIunits.VolumeFlowRate VDisSetMin_flow + parameter Real VDisSetMin_flow( + final unit="m3/s", + final quantity="VolumeFlowRate") "Zone minimum airflow setpoint" annotation(Dialog(group="Nominal condition")); - parameter Modelica.SIunits.VolumeFlowRate VDisHeaSetMax_flow + parameter Real VDisHeaSetMax_flow( + final unit="m3/s", + final quantity="VolumeFlowRate") "Zone maximum heating airflow setpoint" annotation(Dialog(group="Nominal condition")); - parameter Modelica.SIunits.VolumeFlowRate VDisConMin_flow + parameter Real VDisConMin_flow( + final unit="m3/s", + final quantity="VolumeFlowRate") "VAV box controllable minimum" annotation(Dialog(group="Nominal condition")); - parameter Modelica.SIunits.Area AFlo "Area of the zone" + parameter Real AFlo( + final unit="m2", + final quantity="Area") "Area of the zone" annotation(Dialog(group="Nominal condition")); - parameter Real VOutPerAre_flow(final unit = "m3/(s.m2)")=3e-4 + parameter Real VOutPerAre_flow( + final unit = "m3/(s.m2)")=3e-4 "Outdoor air rate per unit area" annotation(Dialog(group="Nominal condition")); - parameter Modelica.SIunits.VolumeFlowRate VOutPerPer_flow=2.5e-3 + parameter Real VOutPerPer_flow( + final unit="m3/s", + final quantity="VolumeFlowRate")=2.5e-3 "Outdoor air rate per person" annotation(Dialog(group="Nominal condition")); parameter Real CO2Set = 894 "CO2 setpoint in ppm" 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 92555448f2f..4b2fb77932b 100644 --- a/Buildings/Controls/OBC/ASHRAE/G36_PR1/TerminalUnits/Reheat/SystemRequests.mo +++ b/Buildings/Controls/OBC/ASHRAE/G36_PR1/TerminalUnits/Reheat/SystemRequests.mo @@ -2,44 +2,66 @@ within Buildings.Controls.OBC.ASHRAE.G36_PR1.TerminalUnits.Reheat; block SystemRequests "Output system requests for VAV reheat terminal unit control" - parameter Modelica.SIunits.Time samplePeriod=120 + parameter Real samplePeriod( + final unit="s", + final quantity="Time")=120 "Sample period of component, set to the same value as the trim and respond that process yPreSetReq"; parameter Boolean have_heaWatCoi "Flag, true if there is a hot water coil"; parameter Boolean have_heaPla "Flag, true if there is a boiler plant"; - parameter Modelica.SIunits.TemperatureDifference errTZonCoo_1=2.8 + parameter Real errTZonCoo_1( + final unit="K", + final displayUnit="K", + final quantity="TemperatureDifference")=2.8 "Limit value of difference between zone temperature and cooling setpoint for generating 3 cooling SAT reset requests"; - parameter Modelica.SIunits.TemperatureDifference errTZonCoo_2=1.7 + parameter Real errTZonCoo_2( + final unit="K", + final displayUnit="K", + final quantity="TemperatureDifference")=1.7 "Limit value of difference between zone temperature and cooling setpoint for generating 2 cooling SAT reset requests"; - parameter Modelica.SIunits.TemperatureDifference errTDis_1=17 + parameter Real errTDis_1( + final unit="K", + final displayUnit="K", + final quantity="TemperatureDifference")=17 "Limit value of difference between discharge air temperature and its setpoint for generating 3 hot water reset requests"; - parameter Modelica.SIunits.TemperatureDifference errTDis_2=8.3 + parameter Real errTDis_2( + final unit="K", + final displayUnit="K", + final quantity="TemperatureDifference")=8.3 "Limit value of difference between discharge air temperature and its setpoint for generating 2 hot water reset requests"; - parameter Modelica.SIunits.Time durTimTem=120 + parameter Real durTimTem( + final unit="s", + final quantity="Time")=120 "Duration time of zone temperature exceeds setpoint" annotation(Dialog(group="Duration times")); - parameter Modelica.SIunits.Time durTimFlo=60 + parameter Real durTimFlo( + final unit="s", + final quantity="Time")=60 "Duration time of airflow rate less than setpoint" annotation(Dialog(group="Duration times")); - parameter Modelica.SIunits.Time durTimDisAir=300 + parameter Real durTimDisAir( + final unit="s", + final quantity="Time")=300 "Duration time of discharge air temperature is less than setpoint" annotation(Dialog(group="Duration times")); Buildings.Controls.OBC.CDL.Interfaces.RealInput TZon( final unit="K", + final displayUnit="degC", final quantity="ThermodynamicTemperature") "Zone temperature" annotation (Placement(transformation(extent={{-220,150},{-180,190}}), iconTransformation(extent={{-140,40},{-100,80}}))); Buildings.Controls.OBC.CDL.Interfaces.RealInput TZonCooSet( final unit="K", + final displayUnit="degC", final quantity="ThermodynamicTemperature") "Zone cooling setpoint temperature" annotation (Placement(transformation(extent={{-220,420},{-180,460}}), @@ -72,12 +94,14 @@ block SystemRequests iconTransformation(extent={{-140,-40},{-100,0}}))); Buildings.Controls.OBC.CDL.Interfaces.RealInput TDisHeaSet( final unit="K", + final displayUnit="degC", final quantity="ThermodynamicTemperature") if have_heaWatCoi "Discharge airflow setpoint temperature for heating" annotation (Placement(transformation(extent={{-220,-230},{-180,-190}}), iconTransformation(extent={{-140,-60},{-100,-20}}))); Buildings.Controls.OBC.CDL.Interfaces.RealInput TDis( final unit="K", + final displayUnit="degC", final quantity="ThermodynamicTemperature") if have_heaWatCoi "Measured discharge airflow temperature" annotation (Placement(transformation(extent={{-220,-310},{-180,-270}}), 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 1bbbbdb9967..44a4e541ca5 100644 --- a/Buildings/Controls/OBC/ASHRAE/G36_PR1/TerminalUnits/SetPoints/ZoneTemperatures.mo +++ b/Buildings/Controls/OBC/ASHRAE/G36_PR1/TerminalUnits/SetPoints/ZoneTemperatures.mo @@ -21,22 +21,40 @@ block ZoneTemperatures "Flag, set to true to exempt individual zone from demand limit setpoint adjustment" annotation(Dialog(group="Setpoint adjustable setting")); - parameter Modelica.SIunits.Temperature TZonCooOnMax=300.15 + parameter Real TZonCooOnMax( + final unit="K", + final displayUnit="degC", + final quantity="ThermodynamicTemperature")=300.15 "Maximum cooling setpoint during on" annotation(Dialog(group="Setpoints limits setting")); - parameter Modelica.SIunits.Temperature TZonCooOnMin=295.15 + parameter Real TZonCooOnMin( + final unit="K", + final displayUnit="degC", + final quantity="ThermodynamicTemperature")=295.15 "Minimum cooling setpoint during on" annotation(Dialog(group="Setpoints limits setting")); - parameter Modelica.SIunits.Temperature TZonHeaOnMax=295.15 + parameter Real TZonHeaOnMax( + final unit="K", + final displayUnit="degC", + final quantity="ThermodynamicTemperature")=295.15 "Maximum heating setpoint during on" annotation(Dialog(group="Setpoints limits setting")); - parameter Modelica.SIunits.Temperature TZonHeaOnMin=291.15 + parameter Real TZonHeaOnMin( + final unit="K", + final displayUnit="degC", + final quantity="ThermodynamicTemperature")=291.15 "Minimum heating setpoint during on" annotation(Dialog(group="Setpoints limits setting")); - parameter Modelica.SIunits.Temperature TZonCooSetWinOpe=322.15 + parameter Real TZonCooSetWinOpe( + final unit="K", + final displayUnit="degC", + final quantity="ThermodynamicTemperature")=322.15 "Cooling setpoint when window is open" annotation(Dialog(group="Setpoints limits setting", enable=have_winSen)); - parameter Modelica.SIunits.Temperature TZonHeaSetWinOpe=277.15 + parameter Real TZonHeaSetWinOpe( + final unit="K", + final displayUnit="degC", + final quantity="ThermodynamicTemperature")=277.15 "Heating setpoint when window is open" annotation(Dialog(group="Setpoints limits setting", enable=have_winSen)); @@ -61,37 +79,43 @@ block ZoneTemperatures Buildings.Controls.OBC.CDL.Interfaces.RealInput TZonCooSetOcc( final unit="K", - quantity="ThermodynamicTemperature") + final displayUnit="degC", + final quantity="ThermodynamicTemperature") "Occupied zone cooling setpoint" annotation (Placement(transformation(extent={{-460,510},{-420,550}}), iconTransformation(extent={{-240,110},{-200,150}}))); Buildings.Controls.OBC.CDL.Interfaces.RealInput TZonHeaSetOcc( final unit="K", - quantity="ThermodynamicTemperature") + final displayUnit="degC", + final quantity="ThermodynamicTemperature") "Occupied zone heating setpoint" annotation (Placement(transformation(extent={{-460,430},{-420,470}}), iconTransformation(extent={{-240,28},{-200,68}}))); Buildings.Controls.OBC.CDL.Interfaces.RealInput TZonCooSetUno( final unit="K", - quantity="ThermodynamicTemperature") + final displayUnit="degC", + final quantity="ThermodynamicTemperature") "Unoccupied zone cooling setpoint" annotation (Placement(transformation(extent={{-460,470},{-420,510}}), iconTransformation(extent={{-240,68},{-200,108}}))); Buildings.Controls.OBC.CDL.Interfaces.RealInput TZonHeaSetUno( final unit="K", - quantity="ThermodynamicTemperature") + final displayUnit="degC", + final quantity="ThermodynamicTemperature") "Unoccupied zone heating setpoint" annotation (Placement(transformation(extent={{-460,390},{-420,430}}), iconTransformation(extent={{-240,-10},{-200,30}}))); Buildings.Controls.OBC.CDL.Interfaces.RealInput setAdj( final unit="K", - quantity="ThermodynamicTemperature") if (cooAdj or sinAdj) + final displayUnit="degC", + final quantity="ThermodynamicTemperature") if (cooAdj or sinAdj) "Setpoint adjustment value" annotation (Placement(transformation(extent={{-460,330},{-420,370}}), iconTransformation(extent={{-240,-50},{-200,-10}}))); Buildings.Controls.OBC.CDL.Interfaces.RealInput heaSetAdj( final unit="K", - quantity="ThermodynamicTemperature") if heaAdj + final displayUnit="degC", + final quantity="ThermodynamicTemperature") if heaAdj "Heating setpoint adjustment value" annotation (Placement(transformation(extent={{-460,250},{-420,290}}), iconTransformation(extent={{-240,-90},{-200,-50}}))); @@ -119,12 +143,14 @@ block ZoneTemperatures origin={60,-220}))); Buildings.Controls.OBC.CDL.Interfaces.RealOutput TZonCooSet( final unit="K", - quantity="ThermodynamicTemperature") "Cooling setpoint temperature" + final displayUnit="degC", + final quantity="ThermodynamicTemperature") "Cooling setpoint temperature" annotation (Placement(transformation(extent={{340,-20},{380,20}}), iconTransformation(extent={{200,60},{240,100}}))); Buildings.Controls.OBC.CDL.Interfaces.RealOutput TZonHeaSet( final unit="K", - quantity="ThermodynamicTemperature") "Heating setpoint temperature" + final displayUnit="degC", + final quantity="ThermodynamicTemperature") "Heating setpoint temperature" annotation (Placement(transformation(extent={{340,-120},{380,-80}}), iconTransformation(extent={{200,-20},{240,20}}))); Buildings.Controls.OBC.CDL.Interfaces.IntegerOutput yAla "Alarm level" From 904a36089e120146a21a8b2151f15864bdc527a1 Mon Sep 17 00:00:00 2001 From: JayHuLBL Date: Fri, 27 Mar 2020 22:18:05 -0700 Subject: [PATCH 05/10] dummy commit to run CI test, #1853 --- .../G36_PR1/AHUs/MultiZone/VAV/SetPoints/SupplyTemperature.mo | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) 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 77c7be4ebaa..0ec1f740803 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 @@ -59,7 +59,7 @@ block SupplyTemperature parameter Real samplePeriod( final unit="s", final quantity="Time", - min=1E-3) = 120 + final min=1E-3) = 120 "Sample period of component" annotation(Dialog(group="Trim and respond logic")); parameter Integer numIgnReq = 2 From c76c1dac526cfde5ff421c14d96da591965f3175 Mon Sep 17 00:00:00 2001 From: JayHuLBL Date: Sat, 28 Mar 2020 23:15:58 -0700 Subject: [PATCH 06/10] added Evaluate=true attribute to avoid translation error in OCT, #1853 --- .../G36_PR1/AHUs/MultiZone/VAV/Controller.mo | 4 +- .../MultiZone/VAV/SetPoints/OutsideAirFlow.mo | 44 +++++++++---------- 2 files changed, 24 insertions(+), 24 deletions(-) diff --git a/Buildings/Controls/OBC/ASHRAE/G36_PR1/AHUs/MultiZone/VAV/Controller.mo b/Buildings/Controls/OBC/ASHRAE/G36_PR1/AHUs/MultiZone/VAV/Controller.mo index 8b71926f844..9a31cc3c90d 100644 --- a/Buildings/Controls/OBC/ASHRAE/G36_PR1/AHUs/MultiZone/VAV/Controller.mo +++ b/Buildings/Controls/OBC/ASHRAE/G36_PR1/AHUs/MultiZone/VAV/Controller.mo @@ -314,8 +314,8 @@ block Controller "Multizone AHU controller that composes subsequences for contro Dialog(tab="Minimum outdoor airflow rate", group="Nominal conditions")); parameter Real VPriSysMax_flow( - final unit=fill("m3/s", numZon), - final quantity=fill("VolumeFlowRate", numZon)) + final unit="m3/s", + final quantity="VolumeFlowRate") "Maximum expected system primary airflow at design stage" annotation (Evaluate=true, Dialog(tab="Minimum outdoor airflow rate", group="Nominal conditions")); diff --git a/Buildings/Controls/OBC/ASHRAE/G36_PR1/AHUs/MultiZone/VAV/SetPoints/OutsideAirFlow.mo b/Buildings/Controls/OBC/ASHRAE/G36_PR1/AHUs/MultiZone/VAV/SetPoints/OutsideAirFlow.mo index e49530327ac..08a27583141 100644 --- a/Buildings/Controls/OBC/ASHRAE/G36_PR1/AHUs/MultiZone/VAV/SetPoints/OutsideAirFlow.mo +++ b/Buildings/Controls/OBC/ASHRAE/G36_PR1/AHUs/MultiZone/VAV/SetPoints/OutsideAirFlow.mo @@ -6,21 +6,21 @@ block OutsideAirFlow "Total number of zones that the system serves"; parameter Real VOutPerAre_flow[numZon]( - each final unit = "m3/(s.m2)")=fill(3e-4, numZon) + each final unit = "m3/(s.m2)") = fill(3e-4, numZon) "Outdoor air rate per unit area" annotation(Dialog(group="Nominal condition")); - parameter Real VOutPerPer_flow[numZon]( - final unit=fill("m3/s", numZon), - final quantity=fill("VolumeFlowRate", numZon))=fill(2.5e-3, numZon) - "Outdoor air rate per person" - annotation(Dialog(group="Nominal condition")); + parameter Real VOutPerPer_flow[numZon]( + final unit=fill("m3/s", numZon), + final quantity=fill("VolumeFlowRate", numZon))=fill(2.5e-3, numZon) + "Outdoor air rate per person" + annotation(Evaluate=true, Dialog(group="Nominal condition")); - parameter Real AFlo[numZon]( - unit=fill("m2", numZon), - quantity=fill("Area", numZon)) - "Floor area of each zone" - annotation(Dialog(group="Nominal condition")); + parameter Real AFlo[numZon]( + final unit=fill("m2", numZon), + final quantity=fill("Area", numZon)) + "Floor area of each zone" + annotation(Evaluate=true, Dialog(group="Nominal condition")); parameter Boolean have_occSen=true "Set to true if zones have occupancy sensor"; @@ -67,17 +67,17 @@ block OutsideAirFlow then it should use cooling supply air distribution effectiveness" annotation (Dialog(tab="Advanced")); - parameter Real VPriSysMax_flow( - final unit="m3/s", - final quantity="VolumeFlowRate") - "Maximum expected system primary airflow at design stage" - annotation(Dialog(group="Nominal condition")); - - parameter Real minZonPriFlo[numZon]( - final unit=fill("m3/s", numZon), - final quantity=fill("VolumeFlowRate", numZon)) - "Minimum expected zone primary flow rate" - annotation(Dialog(group="Nominal condition")); + parameter Real VPriSysMax_flow( + final unit="m3/s", + final quantity="VolumeFlowRate") + "Maximum expected system primary airflow at design stage" + annotation(Evaluate=true, Dialog(group="Nominal condition")); + + parameter Real minZonPriFlo[numZon]( + final unit=fill("m3/s", numZon), + final quantity=fill("VolumeFlowRate", numZon)) + "Minimum expected zone primary flow rate" + annotation(Evaluate=true, Dialog(group="Nominal condition")); parameter Real peaSysPop( final unit="1") = 1.2*sum({occDen[iZon] * AFlo[iZon] for iZon in 1:numZon}) From 0e3cdf86a48af701524a9ef2bf08612ea910b961 Mon Sep 17 00:00:00 2001 From: JayHuLBL Date: Wed, 1 Apr 2020 22:06:03 -0700 Subject: [PATCH 07/10] avoided using evaluate=true, #1853 --- .../G36_PR1/AHUs/MultiZone/VAV/Controller.mo | 138 +++++++----------- .../MultiZone/VAV/Economizers/Controller.mo | 28 ++-- .../VAV/Economizers/Subsequences/Enable.mo | 8 +- .../VAV/Economizers/Subsequences/Limits.mo | 18 +-- .../Economizers/Subsequences/Modulation.mo | 8 +- .../MultiZone/VAV/SetPoints/OutsideAirFlow.mo | 14 +- .../G36_PR1/AHUs/SingleZone/VAV/Controller.mo | 36 ++--- .../SingleZone/VAV/Economizers/Controller.mo | 28 ++-- .../VAV/Economizers/Subsequences/Enable.mo | 8 +- .../VAV/Economizers/Subsequences/Limits.mo | 20 +-- .../Economizers/Subsequences/Modulation.mo | 6 +- .../SingleZone/VAV/SetPoints/ExhaustDamper.mo | 10 +- .../G36_PR1/TerminalUnits/Controller.mo | 63 +++----- .../G36_PR1/TerminalUnits/ModeAndSetPoints.mo | 52 +++---- ...VAV_SetPoints_Validation_ExhaustDamper.txt | 12 +- 15 files changed, 189 insertions(+), 260 deletions(-) diff --git a/Buildings/Controls/OBC/ASHRAE/G36_PR1/AHUs/MultiZone/VAV/Controller.mo b/Buildings/Controls/OBC/ASHRAE/G36_PR1/AHUs/MultiZone/VAV/Controller.mo index 9a31cc3c90d..d4b047da0df 100644 --- a/Buildings/Controls/OBC/ASHRAE/G36_PR1/AHUs/MultiZone/VAV/Controller.mo +++ b/Buildings/Controls/OBC/ASHRAE/G36_PR1/AHUs/MultiZone/VAV/Controller.mo @@ -38,58 +38,54 @@ block Controller "Multizone AHU controller that composes subsequences for contro // ----------- Parameters for economizer control ----------- parameter Boolean use_enthalpy=false "Set to true if enthalpy measurement is used in addition to temperature measurement" - annotation (Evaluate=true,Dialog(tab="Economizer")); + annotation (Dialog(tab="Economizer")); parameter Real delta( final unit="s", final quantity="Time")=5 "Time horizon over which the outdoor air flow measurment is averaged" - annotation (Evaluate=true,Dialog(tab="Economizer")); + annotation (Dialog(tab="Economizer")); parameter Real delTOutHis( final unit="K", final displayUnit="K", final quantity="TemperatureDifference")=1 "Delta between the temperature hysteresis high and low limit" - annotation (Evaluate=true, Dialog(tab="Economizer")); + annotation (Dialog(tab="Economizer")); parameter Real delEntHis( final unit="J/kg", final quantity="SpecificEnergy")=1000 "Delta between the enthalpy hysteresis high and low limits" - annotation (Evaluate=true, Dialog(tab="Economizer", enable=use_enthalpy)); + annotation (Dialog(tab="Economizer", enable=use_enthalpy)); parameter Real retDamPhyPosMax( final min=0, final max=1, final unit="1") = 1 "Physically fixed maximum position of the return air damper" - annotation (Evaluate=true, - Dialog(tab="Economizer", group="Damper limits")); + annotation (Dialog(tab="Economizer", group="Damper limits")); parameter Real retDamPhyPosMin( final min=0, final max=1, final unit="1") = 0 "Physically fixed minimum position of the return air damper" - annotation (Evaluate=true, - Dialog(tab="Economizer", group="Damper limits")); + annotation (Dialog(tab="Economizer", group="Damper limits")); parameter Real outDamPhyPosMax( final min=0, final max=1, final unit="1") = 1 "Physically fixed maximum position of the outdoor air damper" - annotation (Evaluate=true, - Dialog(tab="Economizer", group="Damper limits")); + annotation (Dialog(tab="Economizer", group="Damper limits")); parameter Real outDamPhyPosMin( final min=0, final max=1, final unit="1") = 0 "Physically fixed minimum position of the outdoor air damper" - annotation (Evaluate=true, - Dialog(tab="Economizer", group="Damper limits")); + annotation (Dialog(tab="Economizer", group="Damper limits")); parameter Buildings.Controls.OBC.CDL.Types.SimpleController controllerTypeMinOut= Buildings.Controls.OBC.CDL.Types.SimpleController.PI @@ -160,26 +156,24 @@ block Controller "Multizone AHU controller that composes subsequences for contro parameter Real yMinDamLim=0 "Lower limit of damper position limits control signal output" - annotation (Evaluate=true, - Dialog(tab="Economizer", group="Damper limits")); + annotation (Dialog(tab="Economizer", group="Damper limits")); parameter Real yMaxDamLim=1 "Upper limit of damper position limits control signal output" - annotation (Evaluate=true, - Dialog(tab="Economizer", group="Damper limits")); + annotation (Dialog(tab="Economizer", group="Damper limits")); parameter Real retDamFulOpeTim( final unit="s", final quantity="Time")=180 "Time period to keep RA damper fully open before releasing it for minimum outdoor airflow control at disable to avoid pressure fluctuations" - annotation (Evaluate=true, Dialog(tab="Economizer", group="Economizer delays at disable")); + annotation (Dialog(tab="Economizer", group="Economizer delays at disable")); parameter Real disDel( final unit="s", final quantity="Time")=15 "Short time delay before closing the OA damper at disable to avoid pressure fluctuations" - annotation (Evaluate=true,Dialog(tab="Economizer", group="Economizer delays at disable")); + annotation (Dialog(tab="Economizer", group="Economizer delays at disable")); // ----------- parameters for fan speed control ----------- parameter Real pIniSet( @@ -187,60 +181,52 @@ block Controller "Multizone AHU controller that composes subsequences for contro final displayUnit="Pa", final quantity="PressureDifference")=60 "Initial pressure setpoint for fan speed control" - annotation (Evaluate=true, - Dialog(tab="Fan speed", group="Trim and respond for reseting duct static pressure setpoint")); + annotation (Dialog(tab="Fan speed", group="Trim and respond for reseting duct static pressure setpoint")); parameter Real pMinSet( final unit="Pa", final displayUnit="Pa", final quantity="PressureDifference")=25 "Minimum pressure setpoint for fan speed control" - annotation (Evaluate=true, - Dialog(tab="Fan speed", group="Trim and respond for reseting duct static pressure setpoint")); + annotation (Dialog(tab="Fan speed", group="Trim and respond for reseting duct static pressure setpoint")); parameter Real pMaxSet( final unit="Pa", final displayUnit="Pa", final quantity="PressureDifference")=400 "Maximum pressure setpoint for fan speed control" - annotation (Evaluate=true, - Dialog(tab="Fan speed", group="Trim and respond for reseting duct static pressure setpoint")); + annotation (Dialog(tab="Fan speed", group="Trim and respond for reseting duct static pressure setpoint")); parameter Real pDelTim( final unit="s", final quantity="Time")=600 "Delay time after which trim and respond is activated" - annotation (Evaluate=true, - Dialog(tab="Fan speed", group="Trim and respond for reseting duct static pressure setpoint")); + annotation (Dialog(tab="Fan speed", group="Trim and respond for reseting duct static pressure setpoint")); parameter Integer pNumIgnReq=2 "Number of ignored requests for fan speed control" - annotation (Evaluate=true, - Dialog(tab="Fan speed", group="Trim and respond for reseting duct static pressure setpoint")); + annotation (Dialog(tab="Fan speed", group="Trim and respond for reseting duct static pressure setpoint")); parameter Real pTriAmo( final unit="Pa", final displayUnit="Pa", final quantity="PressureDifference")=-12.0 "Trim amount for fan speed control" - annotation (Evaluate=true, - Dialog(tab="Fan speed", group="Trim and respond for reseting duct static pressure setpoint")); + annotation (Dialog(tab="Fan speed", group="Trim and respond for reseting duct static pressure setpoint")); parameter Real pResAmo( final unit="Pa", final displayUnit="Pa", final quantity="PressureDifference")=15 "Respond amount (must be opposite in to triAmo) for fan speed control" - annotation (Evaluate=true, - Dialog(tab="Fan speed", group="Trim and respond for reseting duct static pressure setpoint")); + annotation (Dialog(tab="Fan speed", group="Trim and respond for reseting duct static pressure setpoint")); parameter Real pMaxRes( final unit="Pa", final displayUnit="Pa", final quantity="PressureDifference")=32 "Maximum response per time interval (same sign as resAmo) for fan speed control" - annotation (Evaluate=true, - Dialog(tab="Fan speed", group="Trim and respond for reseting duct static pressure setpoint")); + annotation (Dialog(tab="Fan speed", group="Trim and respond for reseting duct static pressure setpoint")); parameter Buildings.Controls.OBC.CDL.Types.SimpleController controllerTypeFanSpe=Buildings.Controls.OBC.CDL.Types.SimpleController.PI "Type of controller" @@ -267,88 +253,74 @@ block Controller "Multizone AHU controller that composes subsequences for contro or controllerTypeFanSpe == Buildings.Controls.OBC.CDL.Types.SimpleController.PID)); parameter Real yFanMax=1 "Maximum allowed fan speed" - annotation (Evaluate=true, - Dialog(group="Fan speed PID controller")); + annotation (Dialog(group="Fan speed PID controller")); parameter Real yFanMin=0.1 "Lowest allowed fan speed if fan is on" - annotation (Evaluate=true, - Dialog(group="Fan speed PID controller")); + annotation (Dialog(group="Fan speed PID controller")); // ----------- parameters for minimum outdoor airflow setting ----------- parameter Real zonDisEffHea[numZon]= fill(0.8, outAirSetPoi.numZon) "Zone air distribution effectiveness during heating" - annotation (Evaluate=true, - Dialog(tab="Minimum outdoor airflow rate")); + annotation (Dialog(tab="Minimum outdoor airflow rate")); parameter Real zonDisEffCoo[numZon]= fill(1.0, outAirSetPoi.numZon) "Zone air distribution effectiveness during cooling" - annotation (Evaluate=true, - Dialog(tab="Minimum outdoor airflow rate")); + annotation (Dialog(tab="Minimum outdoor airflow rate")); parameter Real occDen[numZon](each final unit="1/m2")= fill(0.05, outAirSetPoi.numZon) "Default number of person in unit area" - annotation (Evaluate=true, - Dialog(tab="Minimum outdoor airflow rate", group="Nominal conditions")); + annotation (Dialog(tab="Minimum outdoor airflow rate", group="Nominal conditions")); parameter Real VOutPerAre_flow[numZon]( final unit = fill("m3/(s.m2)", outAirSetPoi.numZon))=fill(3e-4, outAirSetPoi.numZon) "Outdoor air rate per unit area" - annotation (Evaluate=true, - Dialog(tab="Minimum outdoor airflow rate", group="Nominal conditions")); + annotation (Dialog(tab="Minimum outdoor airflow rate", group="Nominal conditions")); parameter Real VOutPerPer_flow[numZon]( final unit=fill("m3/s", numZon), final quantity=fill("VolumeFlowRate", numZon))=fill(2.5e-3, outAirSetPoi.numZon) "Outdoor air rate per person" - annotation (Evaluate=true, - Dialog(tab="Minimum outdoor airflow rate", group="Nominal conditions")); + annotation (Dialog(tab="Minimum outdoor airflow rate", group="Nominal conditions")); parameter Real minZonPriFlo[numZon]( final unit=fill("m3/s", numZon), final quantity=fill("VolumeFlowRate", numZon)) "Minimum expected zone primary flow rate" - annotation (Evaluate=true, - Dialog(tab="Minimum outdoor airflow rate", group="Nominal conditions")); + annotation (Dialog(tab="Minimum outdoor airflow rate", group="Nominal conditions")); parameter Real VPriSysMax_flow( final unit="m3/s", final quantity="VolumeFlowRate") "Maximum expected system primary airflow at design stage" - annotation (Evaluate=true, - Dialog(tab="Minimum outdoor airflow rate", group="Nominal conditions")); + annotation (Dialog(tab="Minimum outdoor airflow rate", group="Nominal conditions")); parameter Real desZonDisEff[numZon]=fill(1.0, outAirSetPoi.numZon) "Design zone air distribution effectiveness" - annotation (Evaluate=true, - Dialog(tab="Minimum outdoor airflow rate", group="Nominal conditions")); + annotation (Dialog(tab="Minimum outdoor airflow rate", group="Nominal conditions")); parameter Real desZonPop[numZon]={ outAirSetPoi.occDen[i]*outAirSetPoi.AFlo[i] for i in 1:outAirSetPoi.numZon} "Design zone population during peak occupancy" - annotation (Evaluate=true, - Dialog(tab="Minimum outdoor airflow rate", group="Nominal conditions")); + annotation (Dialog(tab="Minimum outdoor airflow rate", group="Nominal conditions")); parameter Real peaSysPop=1.2*sum( {outAirSetPoi.occDen[iZon]*outAirSetPoi.AFlo[iZon] for iZon in 1:outAirSetPoi.numZon}) "Peak system population" - annotation (Evaluate=true, - Dialog(tab="Minimum outdoor airflow rate", group="Nominal conditions")); + annotation (Dialog(tab="Minimum outdoor airflow rate", group="Nominal conditions")); // parameter Real uLow=-0.5 // "If zone space temperature minus supply air temperature is less than uLow, // then it should use heating supply air distribution effectiveness" -// annotation (Evaluate=true, -// Dialog(tab="Minimum outdoor airflow rate", group="Advanced")); +// annotation (Dialog(tab="Minimum outdoor airflow rate", group="Advanced")); // parameter Real uHig=0.5 // "If zone space temperature minus supply air temperature is more than uHig, // then it should use cooling supply air distribution effectiveness" - // annotation (Evaluate=true, - // Dialog(tab="Minimum outdoor airflow rate", group="Advanced")); + // annotation (Dialog(tab="Minimum outdoor airflow rate", group="Advanced")); // ----------- parameters for supply air temperature control ----------- parameter Real TSupSetMin( @@ -356,97 +328,87 @@ block Controller "Multizone AHU controller that composes subsequences for contro final displayUnit="degC", final quantity="ThermodynamicTemperature")=285.15 "Lowest cooling supply air temperature setpoint" - annotation (Evaluate=true, - Dialog(tab="Supply air temperature", group="Temperature limits")); + annotation (Dialog(tab="Supply air temperature", group="Temperature limits")); parameter Real TSupSetMax( final unit="K", final displayUnit="degC", final quantity="ThermodynamicTemperature")=291.15 "Highest cooling supply air temperature setpoint. It is typically 18 degC (65 degF) in mild and dry climates, 16 degC (60 degF) or lower in humid climates" - annotation (Evaluate=true, - Dialog(tab="Supply air temperature", group="Temperature limits")); + annotation (Dialog(tab="Supply air temperature", group="Temperature limits")); parameter Real TSupSetDes( final unit="K", final displayUnit="degC", final quantity="ThermodynamicTemperature")=286.15 "Nominal supply air temperature setpoint" - annotation (Evaluate=true, - Dialog(tab="Supply air temperature", group="Temperature limits")); + annotation (Dialog(tab="Supply air temperature", group="Temperature limits")); parameter Real TOutMin( final unit="K", final displayUnit="degC", final quantity="ThermodynamicTemperature")=289.15 "Lower value of the outdoor air temperature reset range. Typically value is 16 degC (60 degF)" - annotation (Evaluate=true, - Dialog(tab="Supply air temperature", group="Temperature limits")); + annotation (Dialog(tab="Supply air temperature", group="Temperature limits")); parameter Real TOutMax( final unit="K", final displayUnit="degC", final quantity="ThermodynamicTemperature")=294.15 "Higher value of the outdoor air temperature reset range. Typically value is 21 degC (70 degF)" - annotation (Evaluate=true, - Dialog(tab="Supply air temperature", group="Temperature limits")); + annotation (Dialog(tab="Supply air temperature", group="Temperature limits")); parameter Real iniSetSupTem( final unit="K", final displayUnit="degC", final quantity="ThermodynamicTemperature")=supTemSetPoi.maxSet - "Initial setpoint for supply temperature control" annotation (Evaluate=true, - Dialog(tab="Supply air temperature", group="Trim and respond for reseting TSup setpoint")); + "Initial setpoint for supply temperature control" + annotation (Dialog(tab="Supply air temperature", group="Trim and respond for reseting TSup setpoint")); parameter Real maxSetSupTem( final unit="K", final displayUnit="degC", final quantity="ThermodynamicTemperature")=supTemSetPoi.TSupSetMax - "Maximum setpoint for supply temperature control" annotation (Evaluate=true, - Dialog(tab="Supply air temperature", group="Trim and respond for reseting TSup setpoint")); + "Maximum setpoint for supply temperature control" + annotation (Dialog(tab="Supply air temperature", group="Trim and respond for reseting TSup setpoint")); parameter Real minSetSupTem( final unit="K", final displayUnit="degC", final quantity="ThermodynamicTemperature")=supTemSetPoi.TSupSetDes - "Minimum setpoint for supply temperature control" annotation (Evaluate=true, - Dialog(tab="Supply air temperature", group="Trim and respond for reseting TSup setpoint")); + "Minimum setpoint for supply temperature control" + annotation (Dialog(tab="Supply air temperature", group="Trim and respond for reseting TSup setpoint")); parameter Real delTimSupTem( final unit="s", final quantity="Time")=600 "Delay timer for supply temperature control" - annotation (Evaluate=true, - Dialog(tab="Supply air temperature", group="Trim and respond for reseting TSup setpoint")); + annotation (Dialog(tab="Supply air temperature", group="Trim and respond for reseting TSup setpoint")); parameter Integer numIgnReqSupTem=2 "Number of ignorable requests for supply temperature control" - annotation (Evaluate=true, - Dialog(tab="Supply air temperature", group="Trim and respond for reseting TSup setpoint")); + annotation (Dialog(tab="Supply air temperature", group="Trim and respond for reseting TSup setpoint")); parameter Real triAmoSupTem( final unit="K", final displayUnit="K", final quantity="TemperatureDifference")=0.1 "Trim amount for supply temperature control" - annotation (Evaluate=true, - Dialog(tab="Supply air temperature", group="Trim and respond for reseting TSup setpoint")); + annotation (Dialog(tab="Supply air temperature", group="Trim and respond for reseting TSup setpoint")); parameter Real resAmoSupTem( final unit="K", final displayUnit="K", final quantity="TemperatureDifference")=-0.2 "Response amount for supply temperature control" - annotation (Evaluate=true, - Dialog(tab="Supply air temperature", group="Trim and respond for reseting TSup setpoint")); + annotation (Dialog(tab="Supply air temperature", group="Trim and respond for reseting TSup setpoint")); parameter Real maxResSupTem( final unit="K", final displayUnit="K", final quantity="TemperatureDifference")=-0.6 "Maximum response per time interval for supply temperature control" - annotation (Evaluate=true, - Dialog(tab="Supply air temperature", group="Trim and respond for reseting TSup setpoint")); + annotation (Dialog(tab="Supply air temperature", group="Trim and respond for reseting TSup setpoint")); parameter Buildings.Controls.OBC.CDL.Types.SimpleController controllerTypeTSup= Buildings.Controls.OBC.CDL.Types.SimpleController.PI diff --git a/Buildings/Controls/OBC/ASHRAE/G36_PR1/AHUs/MultiZone/VAV/Economizers/Controller.mo b/Buildings/Controls/OBC/ASHRAE/G36_PR1/AHUs/MultiZone/VAV/Economizers/Controller.mo index 50a3f803792..d03b5303576 100644 --- a/Buildings/Controls/OBC/ASHRAE/G36_PR1/AHUs/MultiZone/VAV/Economizers/Controller.mo +++ b/Buildings/Controls/OBC/ASHRAE/G36_PR1/AHUs/MultiZone/VAV/Economizers/Controller.mo @@ -12,22 +12,22 @@ block Controller "Multi zone VAV AHU economizer control sequence" final displayUnit="K", final quantity="TemperatureDifference")=1 "Delta between the temperature hysteresis high and low limit" - annotation (Evaluate=true, Dialog(tab="Advanced", group="Hysteresis")); + annotation (Dialog(tab="Advanced", group="Hysteresis")); parameter Real delEntHis( final unit="J/kg", final quantity="SpecificEnergy")=1000 "Delta between the enthalpy hysteresis high and low limits" - annotation (Evaluate=true, Dialog(tab="Advanced",group="Hysteresis",enable=use_enthalpy)); + annotation (Dialog(tab="Advanced",group="Hysteresis",enable=use_enthalpy)); parameter Real retDamFulOpeTim( final unit="s", final quantity="Time")=180 "Time period to keep RA damper fully open before releasing it for minimum outdoor airflow control at disable to avoid pressure fluctuations" - annotation (Evaluate=true, Dialog(tab="Advanced", group="Delays at disable")); + annotation (Dialog(tab="Advanced", group="Delays at disable")); parameter Real disDel( final unit="s", final quantity="Time")=15 "Short time delay before closing the OA damper at disable to avoid pressure fluctuations" - annotation (Evaluate=true, Dialog(tab="Advanced", group="Delays at disable")); + annotation (Dialog(tab="Advanced", group="Delays at disable")); parameter Buildings.Controls.OBC.CDL.Types.SimpleController controllerTypeMinOut= Buildings.Controls.OBC.CDL.Types.SimpleController.PI @@ -91,50 +91,48 @@ block Controller "Multi zone VAV AHU economizer control sequence" "Time horizon over which the outdoor air flow measurment is averaged"; parameter Real uHeaMax=-0.25 "Lower limit of controller input when outdoor damper opens for modulation control. Require -1 < uHeaMax < uCooMin < 1." - annotation (Evaluate=true, Dialog(tab="Commissioning", group="Controller")); + annotation (Dialog(tab="Commissioning", group="Controller")); parameter Real uCooMin=+0.25 "Upper limit of controller input when return damper is closed for modulation control. Require -1 < uHeaMax < uCooMin < 1." - annotation (Evaluate=true, Dialog(tab="Commissioning", group="Controller")); + annotation (Dialog(tab="Commissioning", group="Controller")); parameter Real uOutDamMax( final min=-1, final max=1, final unit="1") = (uHeaMax + uCooMin)/2 "Maximum loop signal for the OA damper to be fully open. Require -1 < uHeaMax < uOutDamMax <= uRetDamMin < uCooMin < 1." - annotation (Evaluate=true, Dialog(tab="Commissioning", group="Controller")); + annotation (Dialog(tab="Commissioning", group="Controller")); parameter Real uRetDamMin( final min=-1, final max=1, final unit="1") = (uHeaMax + uCooMin)/2 "Minimum loop signal for the RA damper to be fully open. Require -1 < uHeaMax < uOutDamMax <= uRetDamMin < uCooMin < 1." - annotation (Evaluate=true, Dialog(tab="Commissioning", group="Controller")); + annotation (Dialog(tab="Commissioning", group="Controller")); parameter Real retDamPhyPosMax( final min=0, final max=1, final unit="1") = 1 "Physically fixed maximum position of the return air damper" - annotation (Evaluate=true, Dialog(tab="Commissioning", group="Physical damper position limits")); + annotation (Dialog(tab="Commissioning", group="Physical damper position limits")); parameter Real retDamPhyPosMin( final min=0, final max=1, final unit="1") = 0 "Physically fixed minimum position of the return air damper" - annotation (Evaluate=true, - Dialog(tab="Commissioning", group="Physical damper position limits")); + annotation (Dialog(tab="Commissioning", group="Physical damper position limits")); parameter Real outDamPhyPosMax( final min=0, final max=1, final unit="1") = 1 "Physically fixed maximum position of the outdoor air damper" - annotation (Evaluate=true, Dialog(tab="Commissioning", - group="Physical damper position limits")); + annotation (Dialog(tab="Commissioning", group="Physical damper position limits")); parameter Real outDamPhyPosMin( final min=0, final max=1, final unit="1") = 0 - "Physically fixed minimum position of the outdoor air damper" annotation ( - Evaluate=true, Dialog(tab="Commissioning", group="Physical damper position limits")); + "Physically fixed minimum position of the outdoor air damper" + annotation (Dialog(tab="Commissioning", group="Physical damper position limits")); Buildings.Controls.OBC.CDL.Interfaces.RealInput uTSup(final unit="1") "Signal for supply air temperature control (T Sup Control Loop Signal in diagram)" 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 d1ae20af3b1..c68b17b87f2 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 @@ -10,23 +10,23 @@ block Enable final displayUnit="K", final quantity="TemperatureDifference")=1 "Delta between the temperature hysteresis high and low limit" - annotation(Evaluate=true, Dialog(tab="Advanced", group="Hysteresis")); + annotation(Dialog(tab="Advanced", group="Hysteresis")); parameter Real delEntHis( final unit="J/kg", final quantity="SpecificEnergy")=1000 "Delta between the enthalpy hysteresis high and low limits" - annotation(Evaluate=true, Dialog(tab="Advanced", group="Hysteresis", enable = use_enthalpy)); + annotation(Dialog(tab="Advanced", group="Hysteresis", enable = use_enthalpy)); parameter Real retDamFulOpeTim( final unit="s", final quantity="Time")=180 "Time period to keep RA damper fully open before releasing it for minimum outdoor airflow control at disable to avoid pressure fluctuations" - annotation(Evaluate=true, Dialog(tab="Advanced", group="Delays at disable")); + annotation(Dialog(tab="Advanced", group="Delays at disable")); parameter Real disDel( final unit="s", final quantity="Time")=15 "Short time delay before closing the OA damper at disable to avoid pressure fluctuations" - annotation(Evaluate=true, Dialog(tab="Advanced", group="Delays at disable")); + annotation(Dialog(tab="Advanced", group="Delays at disable")); Buildings.Controls.OBC.CDL.Interfaces.RealInput TOut( final unit="K", 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 1635108e8c5..54a04fa5898 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 @@ -3,15 +3,15 @@ block Limits "Multi zone VAV AHU minimum outdoor air control - damper position limits" constant Real yMin=-1 "Lower limit of control loop signal" - annotation (Evaluate=true,Dialog(tab="Commissioning", group="Controller")); + annotation (Dialog(tab="Commissioning", group="Controller")); constant Real yMax=1 "Upper limit of control loop signal" - annotation (Evaluate=true,Dialog(tab="Commissioning", group="Controller")); + annotation (Dialog(tab="Commissioning", group="Controller")); parameter Real uRetDamMin( final min=yMin, final max=yMax, final unit="1") = 0.5 "Minimum control signal for the return air damper position limit" - annotation (Evaluate=true,Dialog(tab="Commissioning", group="Controller")); + annotation (Dialog(tab="Commissioning", group="Controller")); parameter Buildings.Controls.OBC.CDL.Types.SimpleController controllerType= Buildings.Controls.OBC.CDL.Types.SimpleController.PI @@ -42,29 +42,25 @@ block Limits final min=0, final max=1, final unit="1") = 1 "Physically fixed maximum position of the return air damper" - annotation (Evaluate=true, Dialog(tab="Commissioning", - group="Physical damper position limits")); + annotation (Dialog(tab="Commissioning", group="Physical damper position limits")); parameter Real retDamPhyPosMin( final min=0, final max=1, final unit="1") = 0 "Physically fixed minimum position of the return air damper" - annotation (Evaluate=true, Dialog(tab="Commissioning", - group="Physical damper position limits")); + annotation (Dialog(tab="Commissioning", group="Physical damper position limits")); parameter Real outDamPhyPosMax( final min=0, final max=1, final unit="1") = 1 "Physically fixed maximum position of the outdoor air damper" - annotation (Evaluate=true, - Dialog(tab="Commissioning", group="Physical damper position limits")); + annotation (Dialog(tab="Commissioning", group="Physical damper position limits")); parameter Real outDamPhyPosMin( final min=0, final max=1, final unit="1") = 0 "Physically fixed minimum position of the outdoor air damper" - annotation (Evaluate=true, - Dialog(tab="Commissioning", group="Physical damper position limits")); + annotation (Dialog(tab="Commissioning", group="Physical damper position limits")); Buildings.Controls.OBC.CDL.Interfaces.RealInput VOut_flow_normalized( final unit="1") diff --git a/Buildings/Controls/OBC/ASHRAE/G36_PR1/AHUs/MultiZone/VAV/Economizers/Subsequences/Modulation.mo b/Buildings/Controls/OBC/ASHRAE/G36_PR1/AHUs/MultiZone/VAV/Economizers/Subsequences/Modulation.mo index f2f42eedaa3..82e7c507e02 100644 --- a/Buildings/Controls/OBC/ASHRAE/G36_PR1/AHUs/MultiZone/VAV/Economizers/Subsequences/Modulation.mo +++ b/Buildings/Controls/OBC/ASHRAE/G36_PR1/AHUs/MultiZone/VAV/Economizers/Subsequences/Modulation.mo @@ -6,24 +6,24 @@ block Modulation final max=0, final unit="1")=-0.25 "Lower limit of controller input when outdoor damper opens (see diagram)" - annotation (Evaluate=true,Dialog(tab="Commissioning", group="Controller")); + annotation (Dialog(tab="Commissioning", group="Controller")); parameter Real uMax( final min=0, final unit="1")=+0.25 "Upper limit of controller input when return damper is closed (see diagram)" - annotation (Evaluate=true,Dialog(tab="Commissioning", group="Controller")); + annotation (Dialog(tab="Commissioning", group="Controller")); parameter Real uOutDamMax( final min=-1, final max=1, final unit="1") = (uMin + uMax)/2 "Maximum loop signal for the OA damper to be fully open" - annotation (Evaluate=true, Dialog(tab="Commissioning", group="Controller")); + annotation (Dialog(tab="Commissioning", group="Controller")); parameter Real uRetDamMin( final min=-1, final max=1, final unit="1") = (uMin + uMax)/2 "Minimum loop signal for the RA damper to be fully open" - annotation (Evaluate=true, Dialog(tab="Commissioning", group="Controller")); + annotation (Dialog(tab="Commissioning", group="Controller")); parameter Real samplePeriod( final unit="s", final quantity="Time")= 300 diff --git a/Buildings/Controls/OBC/ASHRAE/G36_PR1/AHUs/MultiZone/VAV/SetPoints/OutsideAirFlow.mo b/Buildings/Controls/OBC/ASHRAE/G36_PR1/AHUs/MultiZone/VAV/SetPoints/OutsideAirFlow.mo index 08a27583141..642a547f198 100644 --- a/Buildings/Controls/OBC/ASHRAE/G36_PR1/AHUs/MultiZone/VAV/SetPoints/OutsideAirFlow.mo +++ b/Buildings/Controls/OBC/ASHRAE/G36_PR1/AHUs/MultiZone/VAV/SetPoints/OutsideAirFlow.mo @@ -11,16 +11,16 @@ block OutsideAirFlow annotation(Dialog(group="Nominal condition")); parameter Real VOutPerPer_flow[numZon]( - final unit=fill("m3/s", numZon), + each final unit="m3/s", final quantity=fill("VolumeFlowRate", numZon))=fill(2.5e-3, numZon) "Outdoor air rate per person" - annotation(Evaluate=true, Dialog(group="Nominal condition")); + annotation(Dialog(group="Nominal condition")); parameter Real AFlo[numZon]( - final unit=fill("m2", numZon), + each final unit="m2", final quantity=fill("Area", numZon)) "Floor area of each zone" - annotation(Evaluate=true, Dialog(group="Nominal condition")); + annotation(Dialog(group="Nominal condition")); parameter Boolean have_occSen=true "Set to true if zones have occupancy sensor"; @@ -71,13 +71,13 @@ block OutsideAirFlow final unit="m3/s", final quantity="VolumeFlowRate") "Maximum expected system primary airflow at design stage" - annotation(Evaluate=true, Dialog(group="Nominal condition")); + annotation(Dialog(group="Nominal condition")); parameter Real minZonPriFlo[numZon]( - final unit=fill("m3/s", numZon), + each final unit="m3/s", final quantity=fill("VolumeFlowRate", numZon)) "Minimum expected zone primary flow rate" - annotation(Evaluate=true, Dialog(group="Nominal condition")); + annotation(Dialog(group="Nominal condition")); parameter Real peaSysPop( final unit="1") = 1.2*sum({occDen[iZon] * AFlo[iZon] for iZon in 1:numZon}) diff --git a/Buildings/Controls/OBC/ASHRAE/G36_PR1/AHUs/SingleZone/VAV/Controller.mo b/Buildings/Controls/OBC/ASHRAE/G36_PR1/AHUs/SingleZone/VAV/Controller.mo index ad97ff75bbb..30024c5e2b7 100644 --- a/Buildings/Controls/OBC/ASHRAE/G36_PR1/AHUs/SingleZone/VAV/Controller.mo +++ b/Buildings/Controls/OBC/ASHRAE/G36_PR1/AHUs/SingleZone/VAV/Controller.mo @@ -96,15 +96,13 @@ block Controller final displayUnit="degC", final quantity="ThermodynamicTemperature") "Maximum supply air temperature for heating" - annotation (Evaluate=true, - Dialog(tab="VAV Setpoints",group="Temperature limits")); + annotation (Dialog(tab="VAV Setpoints",group="Temperature limits")); parameter Real TSupSetMin( final unit="K", final displayUnit="degC", final quantity="ThermodynamicTemperature") "Minimum supply air temperature for cooling" - annotation (Evaluate=true, - Dialog(tab="VAV Setpoints",group="Temperature limits")); + annotation (Dialog(tab="VAV Setpoints",group="Temperature limits")); parameter Real yHeaMax(min=0, max=1, unit="1") "Maximum fan speed for heating" annotation (Dialog(tab="VAV Setpoints",group="Speed")); @@ -229,60 +227,60 @@ block Controller final unit="m3/s", final quantity="VolumeFlowRate")=1.0 "Calculated minimum outdoor airflow rate" - annotation(Evaluate=true, Dialog(tab="Economizer", group="Commissioning")); + annotation(Dialog(tab="Economizer", group="Commissioning")); parameter Real VOutDes_flow( final unit="m3/s", final quantity="VolumeFlowRate")=2.0 "Calculated design outdoor airflow rate" - annotation(Evaluate=true, Dialog(tab="Economizer", group="Commissioning")); + annotation(Dialog(tab="Economizer", group="Commissioning")); parameter Real yDam_VOutMin_minSpe( final min=outDamPhyPosMin, final max=outDamPhyPosMax, final unit="1") = 0.4 "OA damper position to supply minimum outdoor airflow at minimum fan speed" - annotation(Evaluate=true, Dialog(tab="Economizer", group="Commissioning")); + annotation(Dialog(tab="Economizer", group="Commissioning")); parameter Real yDam_VOutMin_maxSpe( final min=outDamPhyPosMin, final max=outDamPhyPosMax, final unit="1") = 0.3 "OA damper position to supply minimum outdoor airflow at maximum fan speed" - annotation(Evaluate=true, Dialog(tab="Economizer", group="Commissioning")); + annotation(Dialog(tab="Economizer", group="Commissioning")); parameter Real yDam_VOutDes_minSpe( final min=yDam_VOutMin_minSpe, final max=outDamPhyPosMax, final unit="1") = 0.9 "OA damper position to supply design outdoor airflow at minimum fan speed" - annotation(Evaluate=true, Dialog(tab="Economizer", group="Commissioning")); + annotation(Dialog(tab="Economizer", group="Commissioning")); parameter Real yDam_VOutDes_maxSpe( final min=yDam_VOutMin_maxSpe, final max=outDamPhyPosMax, final unit="1") = 0.8 "OA damper position to supply design outdoor airflow at maximum fan speed" - annotation(Evaluate=true, Dialog(tab="Economizer", group="Commissioning")); + annotation(Dialog(tab="Economizer", group="Commissioning")); parameter Real outDamPhyPosMax( final min=0, final max=1, final unit="1") = 1 "Physically fixed maximum position of the outdoor air (OA) damper" - annotation(Evaluate=true, Dialog(tab="Economizer", group="Commissioning")); + annotation(Dialog(tab="Economizer", group="Commissioning")); parameter Real outDamPhyPosMin( final min=0, final max=1, final unit="1") = 0 "Physically fixed minimum position of the outdoor air damper" - annotation(Evaluate=true, Dialog(tab="Economizer", group="Commissioning")); + annotation(Dialog(tab="Economizer", group="Commissioning")); parameter Real retDamPhyPosMax( final min=0, final max=1, final unit="1") = 1 "Physically fixed maximum position of the return air damper" - annotation(Evaluate=true, Dialog(tab="Economizer", group="Commissioning")); + annotation(Dialog(tab="Economizer", group="Commissioning")); parameter Real retDamPhyPosMin( final min=0, final max=1, final unit="1") = 0 "Physically fixed minimum position of the return air damper" - annotation(Evaluate=true, Dialog(tab="Economizer", group="Commissioning")); + annotation(Dialog(tab="Economizer", group="Commissioning")); Buildings.Controls.OBC.CDL.Interfaces.RealInput TOut( final unit="K", @@ -522,21 +520,19 @@ equation connect(ave.y, setPoiVAV.TZonSet) annotation (Line(points={{-78,200},{-10,200}, {-10,191.667},{38,191.667}}, color={0,0,127})); connect(TCut, conEco.TCut) annotation (Line(points={{-220,80},{-90,80},{-90,-32.2}, - {119,-32.2}}, - color={0,0,127})); + {119,-32.2}}, color={0,0,127})); connect(conEco.TSup, TSup) annotation (Line(points={{119,-38.6},{-4,-38.6},{-4, 40},{-220,40}}, color={0,0,127})); connect(setPoiVAV.TSupHeaEco, conEco.THeaSupSet) annotation (Line(points={{62,195}, {92,195},{92,-40.2},{119,-40.2}}, color={0,0,127})); connect(setPoiVAV.y, conEco.uSupFanSpe) annotation (Line(points={{62,185},{86, - 185},{86,-43},{119,-43}}, - color={0,0,127})); + 185},{86,-43},{119,-43}}, color={0,0,127})); connect(TMix, conEco.TMix) annotation (Line(points={{-220,0},{0,0},{0,-44.4},{ - 119,-44.4}}, color={0,0,127})); + 119,-44.4}}, color={0,0,127})); connect(setPoiVAV.TSupHeaEco, TSupHeaEco) annotation (Line(points={{62,195},{ 160,195},{160,240},{210,240}}, color={0,0,127})); connect(setPoiVAV.TSupCoo, TSupCoo) annotation (Line(points={{62,190},{140,190}, - {140,180},{210,180}}, color={0,0,127})); + {140,180},{210,180}}, color={0,0,127})); connect(setPoiVAV.y, yFan) annotation (Line(points={{62,185},{120,185},{120, 120},{210,120}}, color={0,0,127})); connect(conEco.yRetDamPos, yRetDamPos) annotation (Line(points={{141,-40},{168, diff --git a/Buildings/Controls/OBC/ASHRAE/G36_PR1/AHUs/SingleZone/VAV/Economizers/Controller.mo b/Buildings/Controls/OBC/ASHRAE/G36_PR1/AHUs/SingleZone/VAV/Economizers/Controller.mo index 1cf5b6269f4..f69846ad1d0 100644 --- a/Buildings/Controls/OBC/ASHRAE/G36_PR1/AHUs/SingleZone/VAV/Economizers/Controller.mo +++ b/Buildings/Controls/OBC/ASHRAE/G36_PR1/AHUs/SingleZone/VAV/Economizers/Controller.mo @@ -18,13 +18,13 @@ block Controller "Single zone VAV AHU economizer control sequence" final displayUnit="K", final quantity="TemperatureDifference")=1 "Delta between the temperature hysteresis high and low limit" - annotation(Evaluate=true, Dialog(tab="Advanced", group="Hysteresis")); + annotation(Dialog(tab="Advanced", group="Hysteresis")); parameter Real delEntHis( final unit="J/kg", final quantity="SpecificEnergy")=1000 "Delta between the enthalpy hysteresis high and low limits" - annotation(Evaluate=true, Dialog(tab="Advanced", group="Hysteresis", enable = use_enthalpy)); + annotation(Dialog(tab="Advanced", group="Hysteresis", enable = use_enthalpy)); parameter Buildings.Controls.OBC.CDL.Types.SimpleController controllerTypeMod= Buildings.Controls.OBC.CDL.Types.SimpleController.PI @@ -99,70 +99,70 @@ block Controller "Single zone VAV AHU economizer control sequence" final min=0, final max=1, final unit="1") = 0.1 "Minimum supply fan operation speed" - annotation(Evaluate=true, Dialog(tab="Commissioning", group="Damper position limits")); + annotation(Dialog(tab="Commissioning", group="Damper position limits")); parameter Real yFanMax( final min=0, final max=1, final unit="1") = 0.9 "Maximum supply fan operation speed" - annotation(Evaluate=true, Dialog(tab="Commissioning", group="Damper position limits")); + annotation(Dialog(tab="Commissioning", group="Damper position limits")); parameter Real VOutMin_flow( final unit="m3/s", final quantity="VolumeFlowRate")=1.0 "Calculated minimum outdoor airflow rate" - annotation(Evaluate=true, Dialog(tab="Commissioning", group="Damper position limits")); + annotation(Dialog(tab="Commissioning", group="Damper position limits")); parameter Real VOutDes_flow( final unit="m3/s", final quantity="VolumeFlowRate")=2.0 "Calculated design outdoor airflow rate" - annotation(Evaluate=true, Dialog(tab="Commissioning", group="Damper position limits")); + annotation(Dialog(tab="Commissioning", group="Damper position limits")); parameter Real yDam_VOutMin_minSpe( final min=outDamPhyPosMin, final max=outDamPhyPosMax, final unit="1") = 0.4 "Outdoor air damper position to supply minimum outdoor airflow at minimum fan speed" - annotation(Evaluate=true, Dialog(tab="Commissioning", group="Damper position limits")); + annotation(Dialog(tab="Commissioning", group="Damper position limits")); parameter Real yDam_VOutMin_maxSpe( final min=outDamPhyPosMin, final max=outDamPhyPosMax, final unit="1") = 0.3 "Outdoor air damper position to supply minimum outdoor airflow at maximum fan speed" - annotation(Evaluate=true, Dialog(tab="Commissioning", group="Damper position limits")); + annotation(Dialog(tab="Commissioning", group="Damper position limits")); parameter Real yDam_VOutDes_minSpe( final min=yDam_VOutMin_minSpe, final max=outDamPhyPosMax, final unit="1") = 0.9 "Outdoor air damper position to supply design outdoor airflow at minimum fan speed" - annotation(Evaluate=true, Dialog(tab="Commissioning", group="Damper position limits")); + annotation(Dialog(tab="Commissioning", group="Damper position limits")); parameter Real yDam_VOutDes_maxSpe( final min=yDam_VOutMin_maxSpe, final max=outDamPhyPosMax, final unit="1") = 0.8 "Outdoor air damper position to supply design outdoor airflow at maximum fan speed" - annotation(Evaluate=true, Dialog(tab="Commissioning", group="Damper position limits")); + annotation(Dialog(tab="Commissioning", group="Damper position limits")); parameter Real outDamPhyPosMax( final min=0, final max=1, final unit="1") = 1 "Physically fixed maximum position of the outdoor air damper" - annotation(Evaluate=true, Dialog(tab="Commissioning", group="Physical damper position limits")); + annotation(Dialog(tab="Commissioning", group="Physical damper position limits")); parameter Real outDamPhyPosMin( final min=0, final max=1, final unit="1") = 0 "Physically fixed minimum position of the outdoor air damper" - annotation(Evaluate=true, Dialog(tab="Commissioning", group="Physical damper position limits")); + annotation(Dialog(tab="Commissioning", group="Physical damper position limits")); parameter Real retDamPhyPosMax( final min=0, final max=1, final unit="1") = 1 "Physically fixed maximum position of the return air damper" - annotation(Evaluate=true, Dialog(tab="Commissioning", group="Physical damper position limits")); + annotation(Dialog(tab="Commissioning", group="Physical damper position limits")); parameter Real retDamPhyPosMin( final min=0, final max=1, final unit="1") = 0 "Physically fixed minimum position of the return air damper" - annotation(Evaluate=true, Dialog(tab="Commissioning", group="Physical damper position limits")); + annotation(Dialog(tab="Commissioning", group="Physical damper position limits")); Buildings.Controls.OBC.CDL.Interfaces.RealInput THeaSupSet( final unit="K", 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 2e4495ef40f..9001bf60e4b 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 @@ -14,24 +14,24 @@ block Enable final displayUnit="K", final quantity="TemperatureDifference")=1 "Delta between the temperature hysteresis high and low limit" - annotation(Evaluate=true, Dialog(tab="Advanced", group="Hysteresis")); + annotation(Dialog(tab="Advanced", group="Hysteresis")); parameter Real delEntHis( final unit="J/kg", final quantity="SpecificEnergy")=1000 "Delta between the enthalpy hysteresis high and low limits" - annotation(Evaluate=true, Dialog(tab="Advanced", group="Hysteresis", enable = use_enthalpy)); + annotation(Dialog(tab="Advanced", group="Hysteresis", enable = use_enthalpy)); parameter Real retDamPhyPosMax( final min=0, final max=1, final unit="1") = 1 "Physically fixed maximum position of the return air damper" - annotation(Evaluate=true, Dialog(tab="Commissioning", group="Physical damper position limits")); + annotation(Dialog(tab="Commissioning", group="Physical damper position limits")); parameter Real retDamPhyPosMin( final min=0, final max=1, final unit="1") = 0 "Physically fixed minimum position of the return air damper" - annotation(Evaluate=true, Dialog(tab="Commissioning", group="Physical damper position limits")); + annotation(Dialog(tab="Commissioning", group="Physical damper position limits")); Buildings.Controls.OBC.CDL.Interfaces.RealInput TOut( final unit="K", 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 a3890107d73..447f62f9026 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 @@ -5,57 +5,57 @@ block Limits "Single zone VAV AHU minimum outdoor air control - damper position final min=0, final max=1, final unit="1") = 0.1 "Minimum supply fan operation speed" - annotation(Evaluate=true, Dialog(tab="Commissioning", group="Damper position limits")); + annotation(Dialog(tab="Commissioning", group="Damper position limits")); parameter Real yFanMax( final min=0, final max=1, final unit="1") = 1 "Maximum supply fan operation speed" - annotation(Evaluate=true, Dialog(tab="Commissioning", group="Damper position limits")); + annotation(Dialog(tab="Commissioning", group="Damper position limits")); parameter Real yDam_VOutMin_minSpe( final min=outDamPhyPosMin, final max=outDamPhyPosMax, final unit="1") = 0.4 "OA damper position to supply minimum outdoor airflow at minimum fan speed" - annotation(Evaluate=true, Dialog(tab="Commissioning", group="Damper position limits")); + annotation(Dialog(tab="Commissioning", group="Damper position limits")); parameter Real yDam_VOutMin_maxSpe( final min=outDamPhyPosMin, final max=outDamPhyPosMax, final unit="1") = 0.3 "OA damper position to supply minimum outdoor airflow at maximum fan speed" - annotation(Evaluate=true, Dialog(tab="Commissioning", group="Damper position limits")); + annotation(Dialog(tab="Commissioning", group="Damper position limits")); parameter Real yDam_VOutDes_minSpe( final min=yDam_VOutMin_minSpe, final max=outDamPhyPosMax, final unit="1") = 0.9 "OA damper position to supply design outdoor airflow at minimum fan speed" - annotation(Evaluate=true, Dialog(tab="Commissioning", group="Damper position limits")); + annotation(Dialog(tab="Commissioning", group="Damper position limits")); parameter Real yDam_VOutDes_maxSpe( final min=yDam_VOutMin_maxSpe, final max=outDamPhyPosMax, final unit="1") = 0.8 "OA damper position to supply design outdoor airflow at maximum fan speed" - annotation(Evaluate=true, Dialog(tab="Commissioning", group="Damper position limits")); + annotation(Dialog(tab="Commissioning", group="Damper position limits")); parameter Real VOutMin_flow( final unit="m3/s", final quantity="VolumeFlowRate") "Calculated minimum outdoor airflow rate" - annotation(Evaluate=true, Dialog(tab="Commissioning", group="Damper position limits")); + annotation(Dialog(tab="Commissioning", group="Damper position limits")); parameter Real VOutDes_flow( final unit="m3/s", final quantity="VolumeFlowRate") "Calculated design outdoor airflow rate" - annotation(Evaluate=true, Dialog(tab="Commissioning", group="Damper position limits")); + annotation(Dialog(tab="Commissioning", group="Damper position limits")); parameter Real outDamPhyPosMax( final min=0, final max=1, final unit="1") = 1 "Physically fixed maximum position of the outdoor air (OA) damper" - annotation(Evaluate=true, Dialog(tab="Commissioning", group="Physical damper position limits")); + annotation(Dialog(tab="Commissioning", group="Physical damper position limits")); parameter Real outDamPhyPosMin( final min=0, final max=1, final unit="1") = 0 "Physically fixed minimum position of the outdoor air damper" - annotation(Evaluate=true, Dialog(tab="Commissioning", group="Physical damper position limits")); + annotation(Dialog(tab="Commissioning", group="Physical damper position limits")); Buildings.Controls.OBC.CDL.Interfaces.RealInput uSupFanSpe( final min=0, 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 fba179ccf09..b34be2d3f4d 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 @@ -24,14 +24,12 @@ block Modulation "Outdoor and return air damper position modulation sequence for final min=0.1, final max=0.9, final unit="1") = 0.1 - "Lower limit of controller output uTSup at which the dampers are at their limits" - annotation(Evaluate=true); + "Lower limit of controller output uTSup at which the dampers are at their limits"; parameter Real uMax( final min=0.1, final max=1, final unit="1") = 0.9 - "Upper limit of controller output uTSup at which the dampers are at their limits" - annotation(Evaluate=true); + "Upper limit of controller output uTSup at which the dampers are at their limits"; Buildings.Controls.OBC.CDL.Interfaces.RealInput TSup( final unit="K", 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 065eca755d9..3b6409fa1ff 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 @@ -4,27 +4,27 @@ block ExhaustDamper parameter Real minExhDamPos( min=0, max=1, - final unit="1") = 0.1 + final unit="1") = 0.2 "Exhaust damper position maintaining building static pressure at setpoint when the system is at minPosMin" - annotation(Evaluate=true, Dialog(group="Nominal parameters")); + annotation(Dialog(group="Nominal parameters")); parameter Real maxExhDamPos( min=0, max=1, final unit="1") = 0.9 "Exhaust damper position maintaining building static pressure at setpoint when outdoor air damper is fully open and fan speed is at cooling maximum" - annotation(Evaluate=true, Dialog(group="Nominal parameters")); + annotation(Dialog(group="Nominal parameters")); parameter Real minOutPosMin( min=0, max=1, final unit="1") = 0.4 "Outdoor air damper position when fan operating at minimum speed to supply minimum outdoor air flow" - annotation(Evaluate=true, Dialog(group="Nominal parameters")); + annotation(Dialog(group="Nominal parameters")); parameter Real outDamPhyPosMax( min=0, max=1, final unit="1")=1 "Physical or at the comissioning fixed maximum position of the outdoor air damper" - annotation(Evaluate=true, Dialog(group="Nominal parameters")); + annotation(Dialog(group="Nominal parameters")); Buildings.Controls.OBC.CDL.Interfaces.BooleanInput uSupFan "Supply fan status" annotation (Placement(transformation(extent={{-140,-70},{-100,-30}}), diff --git a/Buildings/Controls/OBC/ASHRAE/G36_PR1/TerminalUnits/Controller.mo b/Buildings/Controls/OBC/ASHRAE/G36_PR1/TerminalUnits/Controller.mo index a40a86eafc7..e832d488a13 100644 --- a/Buildings/Controls/OBC/ASHRAE/G36_PR1/TerminalUnits/Controller.mo +++ b/Buildings/Controls/OBC/ASHRAE/G36_PR1/TerminalUnits/Controller.mo @@ -113,125 +113,104 @@ block Controller "Controller for room VAV box" parameter Boolean have_occSen=false "Set to true if the zone has occupancy sensor" - annotation (Evaluate=true, - Dialog(tab="Airflow setpoint", group="Zone sensors")); + annotation (Dialog(tab="Airflow setpoint", group="Zone sensors")); parameter Boolean have_winSen=false "Set to true if the zone has window status sensor" - annotation (Evaluate=true, - Dialog(tab="Airflow setpoint", group="Zone sensors")); + annotation (Dialog(tab="Airflow setpoint", group="Zone sensors")); parameter Boolean have_CO2Sen=false "Set to true if the zone has CO2 sensor" - annotation (Evaluate=true, - Dialog(tab="Airflow setpoint", group="Zone sensors")); + annotation (Dialog(tab="Airflow setpoint", group="Zone sensors")); parameter Real VDisCooSetMax_flow( final unit="m3/s", final quantity="VolumeFlowRate")=V_flow_nominal "Zone maximum cooling airflow setpoint" - annotation (Evaluate=true, - Dialog(tab="Airflow setpoint", group="Nominal conditions")); + annotation (Dialog(tab="Airflow setpoint", group="Nominal conditions")); parameter Real VDisSetMin_flow( final unit="m3/s", final quantity="VolumeFlowRate")=0.15*V_flow_nominal "Zone minimum airflow setpoint" - annotation (Evaluate=true, - Dialog(tab="Airflow setpoint", group="Nominal conditions")); + annotation (Dialog(tab="Airflow setpoint", group="Nominal conditions")); parameter Real VDisHeaSetMax_flow( final unit="m3/s", final quantity="VolumeFlowRate")=V_flow_nominal "Zone maximum heating airflow setpoint" - annotation (Evaluate=true, - Dialog(tab="Airflow setpoint", group="Nominal conditions")); + annotation (Dialog(tab="Airflow setpoint", group="Nominal conditions")); parameter Real VDisConMin_flow( final unit="m3/s", final quantity="VolumeFlowRate")=0.1*V_flow_nominal "VAV box controllable minimum" - annotation (Evaluate=true, - Dialog(tab="Airflow setpoint", group="Nominal conditions")); + annotation (Dialog(tab="Airflow setpoint", group="Nominal conditions")); parameter Real VOutPerAre_flow(final unit = "m3/(s.m2)")=3e-4 "Outdoor air rate per unit area" - annotation (Evaluate=true, - Dialog(tab="Airflow setpoint", group="Nominal conditions")); + annotation (Dialog(tab="Airflow setpoint", group="Nominal conditions")); parameter Real VOutPerPer_flow( final unit="m3/s", final quantity="VolumeFlowRate")=2.5e-3 "Outdoor air rate per person" - annotation (Evaluate=true, - Dialog(tab="Airflow setpoint", group="Nominal conditions")); + annotation (Dialog(tab="Airflow setpoint", group="Nominal conditions")); parameter Real CO2Set=894 "CO2 setpoint in ppm" - annotation (Evaluate=true, - Dialog(tab="Airflow setpoint", group="Nominal conditions")); + annotation (Dialog(tab="Airflow setpoint", group="Nominal conditions")); parameter Real dTDisZonSetMax( final unit="K", final displayUnit="K", final quantity="TemperatureDifference")=11 "Zone maximum discharge air temperature above heating setpoint" - annotation (Evaluate=true, - Dialog(tab="Damper and valve", group="Parameters")); + annotation (Dialog(tab="Damper and valve", group="Parameters")); parameter Real TDisMin( final unit="K", final displayUnit="degC", final quantity="ThermodynamicTemperature")=283.15 "Lowest discharge air temperature" - annotation (Evaluate=true, - Dialog(tab="Damper and valve", group="Parameters")); + annotation (Dialog(tab="Damper and valve", group="Parameters")); parameter Boolean have_heaWatCoi=true "Flag, true if there is a hot water coil" - annotation (Evaluate=true, - Dialog(tab="System requests", group="Parameters")); + annotation (Dialog(tab="System requests", group="Parameters")); parameter Boolean have_heaPla=false "Flag, true if there is a boiler plant" - annotation (Evaluate=true, - Dialog(tab="System requests", group="Parameters")); + annotation (Dialog(tab="System requests", group="Parameters")); parameter Real errTZonCoo_1( final unit="K", final displayUnit="K", final quantity="TemperatureDifference")=2.8 "Limit value of difference between zone temperature and cooling setpoint for generating 3 cooling SAT reset requests" - annotation (Evaluate=true, - Dialog(tab="System requests", group="Parameters")); + annotation (Dialog(tab="System requests", group="Parameters")); parameter Real errTZonCoo_2( final unit="K", final displayUnit="K", final quantity="TemperatureDifference")=1.7 "Limit value of difference between zone temperature and cooling setpoint for generating 2 cooling SAT reset requests" - annotation (Evaluate=true, - Dialog(tab="System requests", group="Parameters")); + annotation (Dialog(tab="System requests", group="Parameters")); parameter Real errTDis_1( final unit="K", final displayUnit="K", final quantity="TemperatureDifference")=17 "Limit value of difference between discharge air temperature and its setpoint for generating 3 hot water reset requests" - annotation (Evaluate=true, - Dialog(tab="System requests", group="Parameters")); + annotation (Dialog(tab="System requests", group="Parameters")); parameter Real errTDis_2( final unit="K", final displayUnit="K", final quantity="TemperatureDifference")=8.3 "Limit value of difference between discharge air temperature and its setpoint for generating 2 hot water reset requests" - annotation (Evaluate=true, - Dialog(tab="System requests", group="Parameters")); + annotation (Dialog(tab="System requests", group="Parameters")); parameter Real durTimTem( final unit="s", final quantity="Time")=120 "Duration time of zone temperature exceeds setpoint" - annotation (Evaluate=true, - Dialog(tab="System requests", group="Duration times")); + annotation (Dialog(tab="System requests", group="Duration times")); parameter Real durTimFlo( final unit="s", final quantity="Time")=60 "Duration time of airflow rate less than setpoint" - annotation (Evaluate=true, - Dialog(tab="System requests", group="Duration times")); + annotation (Dialog(tab="System requests", group="Duration times")); parameter Real durTimDisAir( final unit="s", final quantity="Time")=300 "Duration time of discharge air temperature is less than setpoint" - annotation (Evaluate=true, - Dialog(tab="System requests", group="Duration times")); + annotation (Dialog(tab="System requests", group="Duration times")); Buildings.Controls.OBC.CDL.Interfaces.RealInput TZonHeaSet( final quantity="ThermodynamicTemperature", diff --git a/Buildings/Controls/OBC/ASHRAE/G36_PR1/TerminalUnits/ModeAndSetPoints.mo b/Buildings/Controls/OBC/ASHRAE/G36_PR1/TerminalUnits/ModeAndSetPoints.mo index a56eb63659a..bced4c38fae 100644 --- a/Buildings/Controls/OBC/ASHRAE/G36_PR1/TerminalUnits/ModeAndSetPoints.mo +++ b/Buildings/Controls/OBC/ASHRAE/G36_PR1/TerminalUnits/ModeAndSetPoints.mo @@ -26,129 +26,129 @@ block ModeAndSetPoints final unit="s", final quantity="Time")=10800 "Maximum cool-down/warm-up time" - annotation (Evaluate=true, Dialog(tab="Operation mode", group="Parameters")); + annotation (Dialog(tab="Operation mode", group="Parameters")); parameter Real bouLim( final unit="K", final displayUnit="K", final quantity="TemperatureDifference")=1.1 "Value limit to indicate the end of setback/setup mode" - annotation (Evaluate=true, Dialog(tab="Operation mode", group="Parameters")); + annotation (Dialog(tab="Operation mode", group="Parameters")); parameter Real TZonFreProOn( final unit="K", final displayUnit="degC", final quantity="ThermodynamicTemperature")=277.55 "Threshold zone temperature value to activate freeze protection mode" - annotation (Evaluate=true, Dialog(tab="Operation mode", group="Parameters")); + annotation (Dialog(tab="Operation mode", group="Parameters")); parameter Real TZonFreProOff( final unit="K", final displayUnit="degC", final quantity="ThermodynamicTemperature")=280.35 "Threshold zone temperature value to finish the freeze protection mode" - annotation (Evaluate=true, Dialog(tab="Operation mode", group="Parameters")); + annotation (Dialog(tab="Operation mode", group="Parameters")); parameter Real warCooTim( final unit="s", final quantity="Time")=1800 "Defined cool-down/warm-up time" - annotation (Evaluate=true, Dialog(tab="Operation mode", group="Test setting")); + annotation (Dialog(tab="Operation mode", group="Test setting")); parameter Boolean have_occSen=false "Check if the zone has occupancy sensor" - annotation (Evaluate=true, Dialog(tab="Setpoint adjust", group="Sensors")); + annotation (Dialog(tab="Setpoint adjust", group="Sensors")); parameter Boolean have_winSen=false "Check if the zone has window status sensor" - annotation (Evaluate=true, Dialog(tab="Setpoint adjust", group="Sensors")); + annotation (Dialog(tab="Setpoint adjust", group="Sensors")); parameter Boolean cooAdj=false "Flag, set to true if both cooling and heating setpoint are adjustable separately" - annotation (Evaluate=true, Dialog(tab="Setpoint adjust", group="Adjustable settings")); + annotation (Dialog(tab="Setpoint adjust", group="Adjustable settings")); parameter Boolean heaAdj=false "Flag, set to true if heating setpoint is adjustable" - annotation (Evaluate=true, Dialog(tab="Setpoint adjust", group="Adjustable settings")); + annotation (Dialog(tab="Setpoint adjust", group="Adjustable settings")); parameter Boolean sinAdj=false "Flag, set to true if both cooling and heating setpoint are adjustable through a single common knob" - annotation (Evaluate=true, Dialog(tab="Setpoint adjust", group="Adjustable settings")); + annotation (Dialog(tab="Setpoint adjust", group="Adjustable settings")); parameter Boolean ignDemLim=true "Flag, set to true to exempt individual zone from demand limit setpoint adjustment" - annotation (Evaluate=true, Dialog(tab="Setpoint adjust", group="Adjustable settings")); + annotation (Dialog(tab="Setpoint adjust", group="Adjustable settings")); parameter Real TZonCooOnMax( final unit="K", final displayUnit="degC", final quantity="ThermodynamicTemperature")=300.15 "Maximum cooling setpoint during on" - annotation (Evaluate=true, Dialog(tab="Setpoint adjust", group="Limits")); + annotation (Dialog(tab="Setpoint adjust", group="Limits")); parameter Real TZonCooOnMin( final unit="K", final displayUnit="degC", final quantity="ThermodynamicTemperature")=295.15 "Minimum cooling setpoint during on" - annotation (Evaluate=true, Dialog(tab="Setpoint adjust", group="Limits")); + annotation (Dialog(tab="Setpoint adjust", group="Limits")); parameter Real TZonHeaOnMax( final unit="K", final displayUnit="degC", final quantity="ThermodynamicTemperature")=295.15 "Maximum heating setpoint during on" - annotation (Evaluate=true, Dialog(tab="Setpoint adjust", group="Limits")); + annotation (Dialog(tab="Setpoint adjust", group="Limits")); parameter Real TZonHeaOnMin( final unit="K", final displayUnit="degC", final quantity="ThermodynamicTemperature")=291.15 "Minimum heating setpoint during on" - annotation (Evaluate=true, Dialog(tab="Setpoint adjust", group="Limits")); + annotation (Dialog(tab="Setpoint adjust", group="Limits")); parameter Real TZonCooSetWinOpe( final unit="K", final displayUnit="degC", final quantity="ThermodynamicTemperature")=322.15 "Cooling setpoint when window is open" - annotation (Evaluate=true, Dialog(tab="Setpoint adjust", group="Limits")); + annotation (Dialog(tab="Setpoint adjust", group="Limits")); parameter Real TZonHeaSetWinOpe( final unit="K", final displayUnit="degC", final quantity="ThermodynamicTemperature")=277.15 "Heating setpoint when window is open" - annotation (Evaluate=true, Dialog(tab="Setpoint adjust", group="Limits")); + annotation (Dialog(tab="Setpoint adjust", group="Limits")); parameter Real incTSetDem_1( final unit="K", final displayUnit="K", final quantity="TemperatureDifference")=0.56 "Cooling setpoint increase value when cooling demand limit level 1 is imposed" - annotation (Evaluate=true, Dialog(tab="Setpoint adjust", group="Demands settings")); + annotation (Dialog(tab="Setpoint adjust", group="Demands settings")); parameter Real incTSetDem_2( final unit="K", final displayUnit="K", final quantity="TemperatureDifference")=1.1 "Cooling setpoint increase value when cooling demand limit level 2 is imposed" - annotation (Evaluate=true, Dialog(tab="Setpoint adjust", group="Demands settings")); + annotation (Dialog(tab="Setpoint adjust", group="Demands settings")); parameter Real incTSetDem_3( final unit="K", final displayUnit="K", final quantity="TemperatureDifference")=2.2 "Cooling setpoint increase value when cooling demand limit level 3 is imposed" - annotation (Evaluate=true, Dialog(tab="Setpoint adjust", group="Demands settings")); + annotation (Dialog(tab="Setpoint adjust", group="Demands settings")); parameter Real decTSetDem_1( final unit="K", final displayUnit="K", final quantity="TemperatureDifference")=0.56 "Heating setpoint decrease value when heating demand limit level 1 is imposed" - annotation (Evaluate=true, Dialog(tab="Setpoint adjust", group="Demands settings")); + annotation (Dialog(tab="Setpoint adjust", group="Demands settings")); parameter Real decTSetDem_2( final unit="K", final displayUnit="K", final quantity="TemperatureDifference")=1.1 "Heating setpoint decrease value when heating demand limit level 2 is imposed" - annotation (Evaluate=true, Dialog(tab="Setpoint adjust", group="Demands settings")); + annotation (Dialog(tab="Setpoint adjust", group="Demands settings")); parameter Real decTSetDem_3( final unit="K", final displayUnit="K", final quantity="TemperatureDifference")=2.2 "Heating setpoint decrease value when heating demand limit level 3 is imposed" - annotation (Evaluate=true, Dialog(tab="Setpoint adjust", group="Demands settings")); + annotation (Dialog(tab="Setpoint adjust", group="Demands settings")); parameter Integer cooDemLimLevCon=Buildings.Controls.OBC.ASHRAE.G36_PR1.Types.DemandLimitLevels.cooling0 "Cooling demand limit level" - annotation (Evaluate=true, Dialog(tab="Setpoint adjust")); + annotation (Dialog(tab="Setpoint adjust")); parameter Integer heaDemLimLevCon=Buildings.Controls.OBC.ASHRAE.G36_PR1.Types.DemandLimitLevels.heating0 "Heating demand limit level" - annotation (Evaluate=true, Dialog(tab="Setpoint adjust")); + annotation (Dialog(tab="Setpoint adjust")); parameter Boolean winStaCon=false "Window status, set to true if window is open" - annotation (Evaluate=true, Dialog(tab="Setpoint adjust")); + annotation (Dialog(tab="Setpoint adjust")); Buildings.Controls.OBC.CDL.Interfaces.RealInput tNexOcc( final unit="s", diff --git a/Buildings/Resources/ReferenceResults/Dymola/Buildings_Controls_OBC_ASHRAE_G36_PR1_AHUs_SingleZone_VAV_SetPoints_Validation_ExhaustDamper.txt b/Buildings/Resources/ReferenceResults/Dymola/Buildings_Controls_OBC_ASHRAE_G36_PR1_AHUs_SingleZone_VAV_SetPoints_Validation_ExhaustDamper.txt index 2abb3d70d70..e073bd9104f 100644 --- a/Buildings/Resources/ReferenceResults/Dymola/Buildings_Controls_OBC_ASHRAE_G36_PR1_AHUs_SingleZone_VAV_SetPoints_Validation_ExhaustDamper.txt +++ b/Buildings/Resources/ReferenceResults/Dymola/Buildings_Controls_OBC_ASHRAE_G36_PR1_AHUs_SingleZone_VAV_SetPoints_Validation_ExhaustDamper.txt @@ -1,10 +1,10 @@ -last-generated=2017-10-17 +last-generated=2020-04-01 statistics-simulation= { - "numerical Jacobians": "0", - "nonlinear": " ", - "linear": " " + "linear": " ", + "nonlinear": " ", + "numerical Jacobians": "0" } -outDamPos.y=[4.000000059604645e-01, 4.059999883174896e-01, 4.120000004768372e-01, 4.180000126361847e-01, 4.239999949932098e-01, 4.300000071525574e-01, 4.359999895095825e-01, 4.420000016689301e-01, 4.480000138282776e-01, 4.539999961853027e-01, 4.600000083446503e-01, 4.659999907016754e-01, 4.720000028610229e-01, 4.779999852180481e-01, 4.839999973773956e-01, 4.900000095367432e-01, 4.959999918937683e-01, 5.019999742507935e-01, 5.080000162124634e-01, 5.139999985694885e-01, 5.199999809265137e-01, 5.260000228881836e-01, 5.320000052452087e-01, 5.379999876022339e-01, 5.440000295639038e-01, 5.50000011920929e-01, 5.559999942779541e-01, 5.619999766349792e-01, 5.680000185966492e-01, 5.740000009536743e-01, 5.799999833106995e-01, 5.860000252723694e-01, 5.920000076293945e-01, 5.979999899864197e-01, 6.039999723434448e-01, 6.100000143051147e-01, 6.159999966621399e-01, 6.21999979019165e-01, 6.28000020980835e-01, 6.340000033378601e-01, 6.399999856948853e-01, 6.460000276565552e-01, 6.520000100135803e-01, 6.579999923706055e-01, 6.639999747276306e-01, 6.700000166893005e-01, 6.759999990463257e-01, 6.819999814033508e-01, 6.880000233650208e-01, 6.940000057220459e-01, 6.99999988079071e-01, 7.059999704360962e-01, 7.120000123977661e-01, 7.179999947547913e-01, 7.239999771118164e-01, 7.300000190734863e-01, 7.360000014305116e-01, 7.419999837875365e-01, 7.480000257492065e-01, 7.540000081062317e-01, 7.599999904632568e-01, 7.65999972820282e-01, 7.720000147819519e-01, 7.779999971389771e-01, 7.839999794960022e-01, 7.900000214576721e-01, 7.960000038146973e-01, 8.019999861717224e-01, 8.080000281333924e-01, 8.140000104904174e-01, 8.199999928474426e-01, 8.259999752044678e-01, 8.320000171661377e-01, 8.379999995231628e-01, 8.43999981880188e-01, 8.500000238418579e-01, 8.560000061988831e-01, 8.619999885559082e-01, 8.679999709129333e-01, 8.740000128746033e-01, 8.799999952316284e-01, 8.859999775886537e-01, 8.920000195503234e-01, 8.980000019073486e-01, 9.039999842643738e-01, 9.100000262260437e-01, 9.160000085830688e-01, 9.21999990940094e-01, 9.279999732971191e-01, 9.340000152587891e-01, 9.399999976158142e-01, 9.459999799728394e-01, 9.520000219345093e-01, 9.580000042915344e-01, 9.639999866485596e-01, 9.700000286102295e-01, 9.760000109672546e-01, 9.819999933242798e-01, 9.879999756813049e-01, 9.940000176429749e-01, 1e+00] time=[0e+00, 1.2e+03] -exhDamPos.yExhDamPos=[1.000000014901161e-01, 1.080000028014183e-01, 1.159999966621399e-01, 1.239999979734421e-01, 1.319999992847443e-01, 1.400000005960464e-01, 1.480000019073486e-01, 1.560000032186508e-01, 1.64000004529953e-01, 1.720000058412552e-01, 1.800000071525574e-01, 1.879999935626984e-01, 1.959999948740005e-01, 2.039999961853027e-01, 2.119999974966049e-01, 2.199999988079071e-01, 2.280000001192093e-01, 2.360000014305115e-01, 2.440000027418137e-01, 2.520000040531158e-01, 2.599999904632568e-01, 2.680000066757202e-01, 2.759999930858612e-01, 2.840000092983246e-01, 2.919999957084656e-01, 3.00000011920929e-01, 3.079999983310699e-01, 3.160000145435333e-01, 3.240000009536744e-01, 3.319999873638153e-01, 3.400000035762787e-01, 3.479999899864197e-01, 3.560000061988831e-01, 3.63999992609024e-01, 3.720000088214875e-01, 3.799999952316284e-01, 3.880000114440918e-01, 3.959999978542328e-01, 4.040000140666962e-01, 4.120000004768372e-01, 4.199999868869781e-01, 4.280000030994415e-01, 4.359999895095825e-01, 4.440000057220459e-01, 4.519999921321869e-01, 4.600000083446503e-01, 4.679999947547913e-01, 4.760000109672546e-01, 4.839999973773956e-01, 4.92000013589859e-01, 5e-01, 5.080000162124634e-01, 5.15999972820282e-01, 5.239999890327454e-01, 5.320000052452087e-01, 5.400000214576721e-01, 5.479999780654908e-01, 5.55999994277954e-01, 5.640000104904175e-01, 5.720000267028809e-01, 5.799999833106995e-01, 5.879999995231628e-01, 5.960000157356262e-01, 6.039999723434448e-01, 6.119999885559082e-01, 6.200000047683716e-01, 6.28000020980835e-01, 6.359999775886536e-01, 6.439999938011171e-01, 6.520000100135802e-01, 6.600000262260437e-01, 6.679999828338623e-01, 6.759999990463257e-01, 6.840000152587891e-01, 6.919999718666077e-01, 6.99999988079071e-01, 7.080000042915344e-01, 7.160000205039978e-01, 7.239999771118164e-01, 7.319999933242798e-01, 7.400000095367432e-01, 7.480000257492067e-01, 7.55999982357025e-01, 7.639999985694885e-01, 7.720000147819519e-01, 7.799999713897705e-01, 7.879999876022339e-01, 7.960000038146973e-01, 8.040000200271606e-01, 8.119999766349792e-01, 8.199999928474426e-01, 8.28000009059906e-01, 8.360000252723694e-01, 8.43999981880188e-01, 8.519999980926514e-01, 8.600000143051147e-01, 8.679999709129333e-01, 8.759999871253967e-01, 8.840000033378601e-01, 8.920000195503235e-01, 8.999999761581421e-01] +outDamPos.y=[4.000000059604645e-01, 4.059999883174896e-01, 4.120000004768372e-01, 4.180000126361847e-01, 4.239999949932098e-01, 4.300000071525574e-01, 4.359999895095825e-01, 4.420000016689301e-01, 4.480000138282776e-01, 4.539999961853027e-01, 4.600000083446503e-01, 4.659999907016754e-01, 4.720000028610229e-01, 4.779999852180481e-01, 4.839999973773956e-01, 4.900000095367432e-01, 4.959999918937683e-01, 5.019999742507935e-01, 5.080000162124634e-01, 5.139999985694885e-01, 5.199999809265137e-01, 5.260000228881836e-01, 5.320000052452087e-01, 5.379999876022339e-01, 5.440000295639038e-01, 5.50000011920929e-01, 5.559999942779541e-01, 5.619999766349792e-01, 5.680000185966492e-01, 5.740000009536743e-01, 5.799999833106995e-01, 5.860000252723694e-01, 5.920000076293945e-01, 5.979999899864197e-01, 6.039999723434448e-01, 6.100000143051147e-01, 6.159999966621399e-01, 6.21999979019165e-01, 6.28000020980835e-01, 6.340000033378601e-01, 6.399999856948853e-01, 6.460000276565552e-01, 6.520000100135803e-01, 6.579999923706055e-01, 6.639999747276306e-01, 6.700000166893005e-01, 6.759999990463257e-01, 6.819999814033508e-01, 6.880000233650208e-01, 6.940000057220459e-01, 6.99999988079071e-01, 7.059999704360962e-01, 7.120000123977661e-01, 7.179999947547913e-01, 7.239999771118164e-01, 7.300000190734863e-01, 7.360000014305116e-01, 7.419999837875365e-01, 7.480000257492065e-01, 7.540000081062317e-01, 7.599999904632568e-01, 7.65999972820282e-01, 7.720000147819519e-01, 7.779999971389771e-01, 7.839999794960022e-01, 7.900000214576721e-01, 7.960000038146973e-01, 8.019999861717224e-01, 8.080000281333924e-01, 8.140000104904174e-01, 8.199999928474426e-01, 8.259999752044678e-01, 8.320000171661377e-01, 8.379999995231628e-01, 8.43999981880188e-01, 8.500000238418579e-01, 8.560000061988831e-01, 8.619999885559082e-01, 8.679999709129333e-01, 8.740000128746033e-01, 8.799999952316284e-01, 8.859999775886537e-01, 8.920000195503234e-01, 8.980000019073486e-01, 9.039999842643738e-01, 9.100000262260437e-01, 9.160000085830688e-01, 9.21999990940094e-01, 9.279999732971191e-01, 9.340000152587891e-01, 9.399999976158142e-01, 9.459999799728394e-01, 9.520000219345093e-01, 9.580000042915344e-01, 9.639999866485596e-01, 9.700000286102295e-01, 9.760000109672546e-01, 9.819999933242798e-01, 9.879999756813049e-01, 9.940000176429749e-01, 1e+00] +exhDamPos.yExhDamPos=[2.000000029802322e-01, 2.070000022649765e-01, 2.140000015497208e-01, 2.21000000834465e-01, 2.280000001192093e-01, 2.349999994039536e-01, 2.419999986886978e-01, 2.489999979734421e-01, 2.560000121593475e-01, 2.630000114440918e-01, 2.700000107288361e-01, 2.770000100135803e-01, 2.840000092983246e-01, 2.910000085830688e-01, 2.980000078678131e-01, 3.050000071525574e-01, 3.120000064373016e-01, 3.190000057220459e-01, 3.260000050067902e-01, 3.330000042915344e-01, 3.400000035762787e-01, 3.470000028610229e-01, 3.540000021457672e-01, 3.610000014305115e-01, 3.680000007152557e-01, 3.75e-01, 3.819999992847443e-01, 3.889999985694885e-01, 3.959999978542328e-01, 4.029999971389771e-01, 4.099999964237213e-01, 4.169999957084656e-01, 4.239999949932098e-01, 4.309999942779541e-01, 4.379999935626984e-01, 4.449999928474426e-01, 4.519999921321869e-01, 4.589999914169312e-01, 4.659999907016754e-01, 4.729999899864197e-01, 4.799999892711639e-01, 4.869999885559081e-01, 4.939999878406525e-01, 5.009999871253967e-01, 5.080000162124634e-01, 5.149999856948853e-01, 5.220000147819519e-01, 5.289999842643738e-01, 5.360000133514404e-01, 5.429999828338623e-01, 5.50000011920929e-01, 5.569999814033508e-01, 5.640000104904175e-01, 5.709999799728394e-01, 5.78000009059906e-01, 5.849999785423279e-01, 5.920000076293946e-01, 5.989999771118163e-01, 6.060000061988831e-01, 6.129999756813049e-01, 6.200000047683716e-01, 6.269999742507935e-01, 6.340000033378601e-01, 6.40999972820282e-01, 6.480000019073486e-01, 6.549999713897705e-01, 6.620000004768372e-01, 6.690000295639038e-01, 6.759999990463258e-01, 6.830000281333922e-01, 6.899999976158142e-01, 6.970000267028809e-01, 7.039999961853027e-01, 7.110000252723694e-01, 7.179999947547913e-01, 7.250000238418579e-01, 7.319999933242798e-01, 7.390000224113464e-01, 7.459999918937683e-01, 7.53000020980835e-01, 7.599999904632568e-01, 7.670000195503236e-01, 7.739999890327453e-01, 7.81000018119812e-01, 7.879999876022339e-01, 7.950000166893005e-01, 8.019999861717224e-01, 8.090000152587891e-01, 8.159999847412109e-01, 8.230000138282776e-01, 8.299999833106995e-01, 8.370000123977661e-01, 8.43999981880188e-01, 8.510000109672546e-01, 8.579999804496765e-01, 8.650000095367432e-01, 8.71999979019165e-01, 8.790000081062317e-01, 8.859999775886536e-01, 8.930000066757202e-01, 8.999999761581421e-01] From 3985ef7cf6114d14cbb898ab8e927476c2d77157 Mon Sep 17 00:00:00 2001 From: JayHuLBL Date: Wed, 1 Apr 2020 22:40:23 -0700 Subject: [PATCH 08/10] updated G36 reference results, #1853 --- ...ildings_Examples_VAVReheat_Guideline36.txt | 30 +++++++++---------- 1 file changed, 15 insertions(+), 15 deletions(-) diff --git a/Buildings/Resources/ReferenceResults/Dymola/Buildings_Examples_VAVReheat_Guideline36.txt b/Buildings/Resources/ReferenceResults/Dymola/Buildings_Examples_VAVReheat_Guideline36.txt index 544411fe179..a5f927e0a3c 100644 --- a/Buildings/Resources/ReferenceResults/Dymola/Buildings_Examples_VAVReheat_Guideline36.txt +++ b/Buildings/Resources/ReferenceResults/Dymola/Buildings_Examples_VAVReheat_Guideline36.txt @@ -1,4 +1,4 @@ -last-generated=2020-03-11 +last-generated=2020-04-01 statistics-initialization= { "nonlinear": "5, 2, 5, 2, 5, 2, 5, 2, 1, 3, 0", @@ -12,18 +12,18 @@ statistics-simulation= "numerical Jacobians": "0" } time=[0e+00, 1.728e+05] -flo.sou.air.vol.T=[2.931499938964844e+02, 2.923185424804688e+02, 2.922355651855469e+02, 2.921704711914062e+02, 2.921177062988281e+02, 2.920376281738281e+02, 2.919799194335938e+02, 2.91895263671875e+02, 2.91766357421875e+02, 2.916928405761719e+02, 2.916901550292969e+02, 2.915889892578125e+02, 2.914741516113281e+02, 2.914381103515625e+02, 2.919416809082031e+02, 2.9235009765625e+02, 2.928848876953125e+02, 2.932279968261719e+02, 2.934513549804688e+02, 2.935250244140625e+02, 2.934788818359375e+02, 2.935848388671875e+02, 2.936870422363281e+02, 2.937810974121094e+02, 2.939325866699219e+02, 2.941108703613281e+02, 2.940735473632812e+02, 2.94132080078125e+02, 2.945326232910156e+02, 2.946044006347656e+02, 2.946405334472656e+02, 2.946596374511719e+02, 2.946588439941406e+02, 2.946558227539062e+02, 2.946453857421875e+02, 2.946466369628906e+02, 2.945772399902344e+02, 2.943473815917969e+02, 2.940822143554688e+02, 2.937842712402344e+02, 2.935028991699219e+02, 2.93320068359375e+02, 2.933164672851562e+02, 2.935042114257812e+02, 2.934889526367188e+02, 2.934057922363281e+02, 2.930594177246094e+02, 2.929528198242188e+02, 2.928618469238281e+02, 2.927990417480469e+02, 2.92744873046875e+02, 2.92690185546875e+02, 2.926617736816406e+02, 2.925427856445312e+02, 2.924383239746094e+02, 2.9240283203125e+02, 2.923526916503906e+02, 2.923621826171875e+02, 2.9244873046875e+02, 2.923980712890625e+02, 2.921398010253906e+02, 2.921127319335938e+02, 2.921333618164062e+02, 2.920834655761719e+02, 2.924739379882812e+02, 2.927388000488281e+02, 2.928576049804688e+02, 2.929685668945312e+02, 2.931969604492188e+02, 2.934400634765625e+02, 2.934972839355469e+02, 2.935108947753906e+02, 2.934779052734375e+02, 2.9345458984375e+02, 2.935064697265625e+02, 2.9370654296875e+02, 2.936961364746094e+02, 2.93772705078125e+02, 2.940136108398438e+02, 2.940106811523438e+02, 2.940382080078125e+02, 2.940654602050781e+02, 2.940733337402344e+02, 2.940678100585938e+02, 2.940479431152344e+02, 2.9348876953125e+02, 2.933270263671875e+02, 2.935431823730469e+02, 2.934127502441406e+02, 2.931482238769531e+02, 2.929158020019531e+02, 2.928558959960938e+02, 2.927968444824219e+02, 2.927716064453125e+02, 2.928047485351562e+02, 2.928576049804688e+02, 2.928506774902344e+02, 2.929039916992188e+02, 2.929172973632812e+02, 2.928468017578125e+02, 2.927693176269531e+02] -flo.eas.air.vol.T=[2.931499938964844e+02, 2.923406677246094e+02, 2.922623901367188e+02, 2.922044067382812e+02, 2.9216015625e+02, 2.921150512695312e+02, 2.920831604003906e+02, 2.920299987792969e+02, 2.919519958496094e+02, 2.918868408203125e+02, 2.918280334472656e+02, 2.917862548828125e+02, 2.917401123046875e+02, 2.91689453125e+02, 2.922530212402344e+02, 2.925891418457031e+02, 2.928086547851562e+02, 2.930666809082031e+02, 2.934681396484375e+02, 2.93734375e+02, 2.937283020019531e+02, 2.936611938476562e+02, 2.9358740234375e+02, 2.935848693847656e+02, 2.935906372070312e+02, 2.936140747070312e+02, 2.935455322265625e+02, 2.935663452148438e+02, 2.937973327636719e+02, 2.9384521484375e+02, 2.938708190917969e+02, 2.938938598632812e+02, 2.939152221679688e+02, 2.939352111816406e+02, 2.939469909667969e+02, 2.939659729003906e+02, 2.939197692871094e+02, 2.937207641601562e+02, 2.934502258300781e+02, 2.931285705566406e+02, 2.930462036132812e+02, 2.929959411621094e+02, 2.929480590820312e+02, 2.929805908203125e+02, 2.930130310058594e+02, 2.928660583496094e+02, 2.928458862304688e+02, 2.927803344726562e+02, 2.927174072265625e+02, 2.926792907714844e+02, 2.926462097167969e+02, 2.925997924804688e+02, 2.925637817382812e+02, 2.925018005371094e+02, 2.924644470214844e+02, 2.9243505859375e+02, 2.923846740722656e+02, 2.92373046875e+02, 2.922773742675781e+02, 2.922653503417969e+02, 2.922592163085938e+02, 2.922470703125e+02, 2.9225439453125e+02, 2.921317443847656e+02, 2.925153503417969e+02, 2.927294616699219e+02, 2.928516540527344e+02, 2.929875183105469e+02, 2.932818298339844e+02, 2.935324401855469e+02, 2.935526428222656e+02, 2.935294799804688e+02, 2.934958801269531e+02, 2.934661254882812e+02, 2.934929504394531e+02, 2.935508422851562e+02, 2.935168762207031e+02, 2.935738830566406e+02, 2.937960205078125e+02, 2.938152770996094e+02, 2.938360595703125e+02, 2.938638000488281e+02, 2.938693237304688e+02, 2.937723693847656e+02, 2.936621704101562e+02, 2.93826904296875e+02, 2.937349853515625e+02, 2.93406982421875e+02, 2.932682495117188e+02, 2.930095520019531e+02, 2.929009094238281e+02, 2.928940124511719e+02, 2.928761901855469e+02, 2.927814331054688e+02, 2.926857299804688e+02, 2.926377868652344e+02, 2.926719970703125e+02, 2.928818054199219e+02, 2.929176940917969e+02, 2.928750305175781e+02, 2.927850036621094e+02] -flo.nor.air.vol.T=[2.931499938964844e+02, 2.92318359375e+02, 2.922354736328125e+02, 2.921711730957031e+02, 2.921197509765625e+02, 2.920670166015625e+02, 2.920270385742188e+02, 2.919697265625e+02, 2.918894348144531e+02, 2.918211975097656e+02, 2.917609252929688e+02, 2.917135925292969e+02, 2.916621704101562e+02, 2.916083068847656e+02, 2.92109375e+02, 2.924425048828125e+02, 2.927513427734375e+02, 2.93046875e+02, 2.932963562011719e+02, 2.933694763183594e+02, 2.933462524414062e+02, 2.933589172363281e+02, 2.933826293945312e+02, 2.93411376953125e+02, 2.934274291992188e+02, 2.934424743652344e+02, 2.933733215332031e+02, 2.933729553222656e+02, 2.935304870605469e+02, 2.935361633300781e+02, 2.935711669921875e+02, 2.936034851074219e+02, 2.936326904296875e+02, 2.936584167480469e+02, 2.936778869628906e+02, 2.937033386230469e+02, 2.936663513183594e+02, 2.934836730957031e+02, 2.932383117675781e+02, 2.92938232421875e+02, 2.928169555664062e+02, 2.927667846679688e+02, 2.92757080078125e+02, 2.927539978027344e+02, 2.9277978515625e+02, 2.927108154296875e+02, 2.926298522949219e+02, 2.925653991699219e+02, 2.925039672851562e+02, 2.924652709960938e+02, 2.924321899414062e+02, 2.923878479003906e+02, 2.923497314453125e+02, 2.922916870117188e+02, 2.922536010742188e+02, 2.922247009277344e+02, 2.921776733398438e+02, 2.92166259765625e+02, 2.921655578613281e+02, 2.921505432128906e+02, 2.920687255859375e+02, 2.920514831542969e+02, 2.920566101074219e+02, 2.919588623046875e+02, 2.923126220703125e+02, 2.9253271484375e+02, 2.926709289550781e+02, 2.928978271484375e+02, 2.9323095703125e+02, 2.934414978027344e+02, 2.934837646484375e+02, 2.934955139160156e+02, 2.934914855957031e+02, 2.934853820800781e+02, 2.934807434082031e+02, 2.934886169433594e+02, 2.934189147949219e+02, 2.934545288085938e+02, 2.936783447265625e+02, 2.937005920410156e+02, 2.9372412109375e+02, 2.937544250488281e+02, 2.93775634765625e+02, 2.937834167480469e+02, 2.937804260253906e+02, 2.937474975585938e+02, 2.936525268554688e+02, 2.93448974609375e+02, 2.932530517578125e+02, 2.930101623535156e+02, 2.929492492675781e+02, 2.929180908203125e+02, 2.928805847167969e+02, 2.928421630859375e+02, 2.927888488769531e+02, 2.927376708984375e+02, 2.927286987304688e+02, 2.927489929199219e+02, 2.9279296875e+02, 2.927554321289062e+02, 2.925432739257812e+02] -flo.wes.air.vol.T=[2.931499938964844e+02, 2.921127319335938e+02, 2.920301513671875e+02, 2.919742431640625e+02, 2.919439086914062e+02, 2.919264221191406e+02, 2.919386596679688e+02, 2.918870849609375e+02, 2.917911071777344e+02, 2.917210693359375e+02, 2.916390075683594e+02, 2.916207885742188e+02, 2.9163037109375e+02, 2.916624755859375e+02, 2.921773071289062e+02, 2.924990844726562e+02, 2.927305908203125e+02, 2.930122375488281e+02, 2.932732543945312e+02, 2.933692932128906e+02, 2.933729248046875e+02, 2.932032775878906e+02, 2.933352661132812e+02, 2.934600524902344e+02, 2.933799743652344e+02, 2.9334521484375e+02, 2.932666931152344e+02, 2.932881469726562e+02, 2.93469970703125e+02, 2.934952392578125e+02, 2.935228576660156e+02, 2.936145935058594e+02, 2.937348327636719e+02, 2.937986450195312e+02, 2.938140869140625e+02, 2.938337707519531e+02, 2.937934875488281e+02, 2.936073913574219e+02, 2.9335791015625e+02, 2.930585021972656e+02, 2.929449462890625e+02, 2.928957214355469e+02, 2.928900451660156e+02, 2.928990173339844e+02, 2.929136047363281e+02, 2.928417663574219e+02, 2.927627868652344e+02, 2.9269775390625e+02, 2.926355590820312e+02, 2.925982666015625e+02, 2.925660095214844e+02, 2.925234069824219e+02, 2.924916076660156e+02, 2.924300842285156e+02, 2.923898010253906e+02, 2.923618774414062e+02, 2.923164367675781e+02, 2.923110961914062e+02, 2.923070678710938e+02, 2.922917175292969e+02, 2.922007446289062e+02, 2.92183837890625e+02, 2.921548767089844e+02, 2.920808410644531e+02, 2.924186401367188e+02, 2.926233215332031e+02, 2.927466430664062e+02, 2.928888244628906e+02, 2.932042236328125e+02, 2.934834289550781e+02, 2.935282592773438e+02, 2.935313110351562e+02, 2.935177917480469e+02, 2.935021057128906e+02, 2.934927673339844e+02, 2.935194396972656e+02, 2.934907836914062e+02, 2.935549926757812e+02, 2.937873229980469e+02, 2.938196716308594e+02, 2.938512268066406e+02, 2.938869323730469e+02, 2.939092407226562e+02, 2.939149780273438e+02, 2.939071350097656e+02, 2.93871337890625e+02, 2.937700805664062e+02, 2.935608215332031e+02, 2.933665771484375e+02, 2.931251831054688e+02, 2.930697937011719e+02, 2.930398864746094e+02, 2.930028686523438e+02, 2.929617309570312e+02, 2.929039001464844e+02, 2.928502502441406e+02, 2.928456420898438e+02, 2.929089965820312e+02, 2.929212951660156e+02, 2.928830871582031e+02, 2.927089233398438e+02] -flo.cor.air.vol.T=[2.931499938964844e+02, 2.927408142089844e+02, 2.926835632324219e+02, 2.926394348144531e+02, 2.926067504882812e+02, 2.925718994140625e+02, 2.92548095703125e+02, 2.925093078613281e+02, 2.924478454589844e+02, 2.923976745605469e+02, 2.923592224121094e+02, 2.923205261230469e+02, 2.9228125e+02, 2.922084045410156e+02, 2.926407165527344e+02, 2.929486694335938e+02, 2.931539611816406e+02, 2.933144836425781e+02, 2.935863952636719e+02, 2.937249145507812e+02, 2.93753173828125e+02, 2.937705688476562e+02, 2.938192138671875e+02, 2.938764343261719e+02, 2.939024658203125e+02, 2.939279174804688e+02, 2.938620300292969e+02, 2.9388330078125e+02, 2.941030578613281e+02, 2.941496276855469e+02, 2.941891174316406e+02, 2.942350158691406e+02, 2.942830505371094e+02, 2.943236694335938e+02, 2.943523559570312e+02, 2.943824462890625e+02, 2.943403930664062e+02, 2.941416931152344e+02, 2.938625183105469e+02, 2.935637817382812e+02, 2.935101623535156e+02, 2.934684753417969e+02, 2.934443359375e+02, 2.934391174316406e+02, 2.934469299316406e+02, 2.934013977050781e+02, 2.933359985351562e+02, 2.932850036621094e+02, 2.93236328125e+02, 2.932002258300781e+02, 2.931688232421875e+02, 2.931350402832031e+02, 2.931064147949219e+02, 2.930610046386719e+02, 2.930169677734375e+02, 2.929908752441406e+02, 2.929548950195312e+02, 2.929379272460938e+02, 2.929279479980469e+02, 2.929093933105469e+02, 2.928458557128906e+02, 2.928143615722656e+02, 2.928070678710938e+02, 2.926724548339844e+02, 2.929330444335938e+02, 2.930843505859375e+02, 2.931555480957031e+02, 2.93255615234375e+02, 2.935744018554688e+02, 2.939107666015625e+02, 2.939759826660156e+02, 2.940036926269531e+02, 2.940136108398438e+02, 2.940193481445312e+02, 2.940399780273438e+02, 2.940919494628906e+02, 2.940342712402344e+02, 2.940749206542969e+02, 2.943165283203125e+02, 2.943526611328125e+02, 2.943842468261719e+02, 2.944202270507812e+02, 2.944479064941406e+02, 2.944530029296875e+02, 2.944458312988281e+02, 2.943911437988281e+02, 2.942773742675781e+02, 2.940744934082031e+02, 2.938843994140625e+02, 2.936394958496094e+02, 2.935816955566406e+02, 2.935513000488281e+02, 2.935158081054688e+02, 2.934757385253906e+02, 2.934382019042969e+02, 2.934118347167969e+02, 2.933985595703125e+02, 2.934347229003906e+02, 2.934446716308594e+02, 2.934160461425781e+02, 2.933287353515625e+02] -sou.vav.m_flow=[3.233083017886024e-13, 1.145001369877718e-04, 1.145172718679532e-04, 1.144304187619127e-04, 1.142778055509552e-04, 1.141062894021161e-04, 1.139160958700813e-04, 1.139233718276955e-04, 1.13988142402377e-04, 1.140117165050469e-04, 1.141368629760109e-04, 1.139980377047323e-04, 1.139563391916454e-04, 1.059961244463921e-01, 1.609348952770233e-01, 2.179326564073563e-01, 3.226338624954224e-01, 3.360756933689118e-01, 2.330234795808792e-01, 1.787928640842438e-01, 1.717634350061417e-01, 1.707899123430252e-01, 1.706561744213104e-01, 1.706371307373047e-01, 1.706340610980988e-01, 1.706338673830032e-01, 1.706340312957764e-01, 1.706342548131943e-01, 1.706352233886719e-01, 1.706347614526749e-01, 1.706338822841644e-01, 1.706337183713913e-01, 1.706336140632629e-01, 1.706337034702301e-01, 1.706337779760361e-01, 1.706338226795197e-01, 1.706338971853256e-01, 1.706339120864868e-01, 1.706339418888092e-01, 1.70634001493454e-01, 1.141844186349772e-04, 1.143573681474663e-04, 1.139184605563059e-04, 1.358574809273705e-05, 6.138978392300487e-07, 1.138570587499999e-04, 1.141551256296225e-04, 1.143377594416961e-04, 1.144567941082641e-04, 1.143568588304333e-04, 1.142901674029417e-04, 1.143006302299909e-04, 1.140450985985808e-04, 1.144078923971392e-04, 1.143092740676366e-04, 1.142941327998415e-04, 1.144426569226198e-04, 1.140502572525293e-04, 1.138980442192405e-04, 1.139167798100971e-04, 1.150882235378958e-04, 1.144994530477561e-04, 1.141004977398552e-04, 1.059962585568428e-01, 1.609344184398651e-01, 1.692392230033875e-01, 1.704417914152145e-01, 1.705977916717529e-01, 1.70648604631424e-01, 1.706307381391525e-01, 1.706302613019943e-01, 1.706328243017197e-01, 1.706338226795197e-01, 1.706339567899704e-01, 1.706339567899704e-01, 1.706339567899704e-01, 1.70633852481842e-01, 1.706338375806808e-01, 1.706340163946152e-01, 1.706338971853256e-01, 1.706338971853256e-01, 1.706340163946152e-01, 1.706340909004211e-01, 1.706341654062271e-01, 1.706338226795197e-01, 1.706360578536987e-01, 1.706332862377167e-01, 1.70634388923645e-01, 1.706340461969376e-01, 1.706337034702301e-01, 1.140806780313142e-04, 1.140311069320887e-04, 1.140346212196164e-04, 1.141159300459549e-04, 1.146459326264448e-04, 1.152391123468988e-04, 1.148079099948518e-04, 4.052188523928635e-05, 9.6992498668097e-13, 5.651883475366049e-05, 1.139503510785289e-04] -eas.vav.m_flow=[3.070213896484708e-13, 1.087320997612551e-04, 1.087483688024804e-04, 1.08665888546966e-04, 1.085209732991643e-04, 1.083580937120132e-04, 1.081774826161563e-04, 1.081843947758898e-04, 1.082458984456025e-04, 1.082682865671813e-04, 1.083871247828938e-04, 1.082552917068824e-04, 1.08215695945546e-04, 1.006564795970917e-01, 1.528276801109314e-01, 1.606794893741608e-01, 1.6183140873909e-01, 1.620342880487442e-01, 1.620940268039703e-01, 1.620274633169174e-01, 1.620190888643265e-01, 1.620322316884995e-01, 1.620374321937561e-01, 1.620380878448486e-01, 1.620378047227859e-01, 1.620379835367203e-01, 1.62038192152977e-01, 1.620384156703949e-01, 1.620393395423889e-01, 1.620389074087143e-01, 1.620380729436874e-01, 1.620378941297531e-01, 1.620378047227859e-01, 1.620378792285919e-01, 1.620379686355591e-01, 1.620380133390427e-01, 1.620380878448486e-01, 1.620380878448486e-01, 1.62038117647171e-01, 1.620381772518158e-01, 1.08432286651805e-04, 1.085965195670724e-04, 1.081797236111015e-04, 1.290135423914762e-05, 5.82972234042245e-07, 1.081214140867814e-04, 1.08404470665846e-04, 1.085779003915377e-04, 1.086909396690316e-04, 1.085960393538699e-04, 1.08532709418796e-04, 1.085426411009394e-04, 1.082999806385487e-04, 1.086445045075379e-04, 1.085508483811282e-04, 1.085364783648401e-04, 1.086775155272335e-04, 1.083048846339807e-04, 1.081603404600173e-04, 1.08178130176384e-04, 1.092905586119741e-04, 1.087314522010274e-04, 1.083525930880569e-04, 1.006566062569618e-01, 1.528272181749344e-01, 1.607136577367783e-01, 1.618556529283524e-01, 1.620037853717804e-01, 1.620520353317261e-01, 1.620350778102875e-01, 1.620346307754517e-01, 1.620370596647263e-01, 1.620379984378815e-01, 1.620381325483322e-01, 1.620381325483322e-01, 1.620381325483322e-01, 1.620380282402039e-01, 1.620380133390427e-01, 1.62038192152977e-01, 1.620380729436874e-01, 1.620380729436874e-01, 1.62038192152977e-01, 1.62038266658783e-01, 1.620383262634277e-01, 1.620380133390427e-01, 1.620401293039322e-01, 1.620374917984009e-01, 1.620385348796844e-01, 1.620382219552994e-01, 1.620378941297531e-01, 1.08333770185709e-04, 1.082866947399452e-04, 1.082900344044901e-04, 1.083672468666919e-04, 1.088705466827378e-04, 1.094338513212278e-04, 1.090243677026592e-04, 3.848056439892389e-05, 9.210642231555211e-13, 5.367165067582391e-05, 1.082100134226494e-04] -nor.vav.m_flow=[3.233083017886024e-13, 1.145001369877718e-04, 1.145172718679532e-04, 1.144304187619127e-04, 1.142778055509552e-04, 1.141062894021161e-04, 1.139160958700813e-04, 1.139233718276955e-04, 1.13988142402377e-04, 1.140117165050469e-04, 1.141368629760109e-04, 1.139980377047323e-04, 1.139563391916454e-04, 1.059961244463921e-01, 1.609348952770233e-01, 1.692032366991043e-01, 2.460262030363083e-01, 3.066921830177307e-01, 2.738916277885437e-01, 1.954493820667267e-01, 1.741075962781906e-01, 1.711206138134003e-01, 1.707029938697815e-01, 1.706437319517136e-01, 1.70634999871254e-01, 1.706339865922928e-01, 1.706340461969376e-01, 1.706342548131943e-01, 1.706352233886719e-01, 1.706347614526749e-01, 1.706338822841644e-01, 1.706337183713913e-01, 1.706336140632629e-01, 1.706337034702301e-01, 1.706337779760361e-01, 1.706338226795197e-01, 1.706338971853256e-01, 1.706339120864868e-01, 1.706339418888092e-01, 1.70634001493454e-01, 1.141844186349772e-04, 1.143573681474663e-04, 1.139184605563059e-04, 1.358574809273705e-05, 6.138978392300487e-07, 1.138570587499999e-04, 1.141551256296225e-04, 1.143377594416961e-04, 1.144567941082641e-04, 1.143568588304333e-04, 1.142901674029417e-04, 1.143006302299909e-04, 1.140450985985808e-04, 1.144078923971392e-04, 1.143092740676366e-04, 1.142941327998415e-04, 1.144426569226198e-04, 1.140502572525293e-04, 1.138980442192405e-04, 1.139167798100971e-04, 1.150882235378958e-04, 1.144994530477561e-04, 1.141004977398552e-04, 1.059962585568428e-01, 1.609344184398651e-01, 1.692392230033875e-01, 1.704417914152145e-01, 2.228827327489853e-01, 2.166260331869121e-01, 1.771331131458284e-01, 1.715524643659592e-01, 1.707645356655121e-01, 1.706526428461075e-01, 1.706366539001465e-01, 1.706343442201614e-01, 1.70634001493454e-01, 1.70633852481842e-01, 1.706338375806808e-01, 1.706340163946152e-01, 1.706338971853256e-01, 1.706338971853256e-01, 1.706340163946152e-01, 1.706340909004211e-01, 1.706341654062271e-01, 1.706338226795197e-01, 1.706360578536987e-01, 1.706332862377167e-01, 1.70634388923645e-01, 1.706340461969376e-01, 1.706337034702301e-01, 1.140806780313142e-04, 1.140311069320887e-04, 1.140346212196164e-04, 1.141159300459549e-04, 1.146459326264448e-04, 1.152391123468988e-04, 1.148079099948518e-04, 4.052188523928635e-05, 9.6992498668097e-13, 5.651883475366049e-05, 1.139503510785289e-04] -wes.vav.m_flow=[2.387944171827056e-13, 8.456941577605903e-05, 8.45820686663501e-05, 8.451791654806584e-05, 8.440519741270691e-05, 8.427851571468636e-05, 8.413803880102932e-05, 8.414341573370621e-05, 8.419125515501946e-05, 8.42086665215902e-05, 8.430109301116318e-05, 8.41985602164641e-05, 8.416776108788326e-05, 7.828837633132935e-02, 1.18865966796875e-01, 1.24972939491272e-01, 1.451200991868973e-01, 1.91312238574028e-01, 1.731591075658798e-01, 1.337888240814209e-01, 1.271077543497086e-01, 1.261792480945587e-01, 1.260509490966797e-01, 1.260326951742172e-01, 1.26029834151268e-01, 1.260296106338501e-01, 1.260297149419785e-01, 1.260298788547516e-01, 1.260305941104889e-01, 1.260302513837814e-01, 1.260296106338501e-01, 1.260294765233994e-01, 1.260294020175934e-01, 1.260294616222382e-01, 1.260295212268829e-01, 1.260295659303665e-01, 1.260296255350113e-01, 1.260296255350113e-01, 1.260296404361725e-01, 1.260296851396561e-01, 8.433622133452445e-05, 8.446395804639906e-05, 8.413978503085673e-05, 1.003438683255808e-05, 4.534228423835884e-07, 8.409443398704752e-05, 8.431458991253749e-05, 8.444947889074683e-05, 8.453740156255662e-05, 8.446358697256073e-05, 8.441432873951271e-05, 8.442205580649897e-05, 8.423331746598706e-05, 8.45012764330022e-05, 8.442843682132661e-05, 8.441726095043123e-05, 8.452696056338027e-05, 8.423713006777689e-05, 8.412470924668014e-05, 8.413854811806232e-05, 8.500376861775294e-05, 8.456890645902604e-05, 8.427423745160922e-05, 7.828847318887711e-02, 1.188656166195869e-01, 1.249995157122612e-01, 1.258877217769623e-01, 1.260029375553131e-01, 1.260404735803604e-01, 1.260272860527039e-01, 1.260269284248352e-01, 1.260288208723068e-01, 1.260295510292053e-01, 1.260296702384949e-01, 1.260296702384949e-01, 1.260296553373337e-01, 1.260295808315277e-01, 1.260295659303665e-01, 1.260297000408173e-01, 1.260296106338501e-01, 1.260296106338501e-01, 1.260297000408173e-01, 1.26029759645462e-01, 1.260298192501068e-01, 1.260295659303665e-01, 1.260312050580978e-01, 1.260291635990143e-01, 1.260299831628799e-01, 1.260297298431396e-01, 1.260294765233994e-01, 8.425959822488949e-05, 8.422298560617492e-05, 8.422558312304318e-05, 8.428563887719065e-05, 8.467709267279133e-05, 8.511521446052939e-05, 8.479673124384135e-05, 2.992932786582969e-05, 7.16383278653171e-13, 4.174461719230749e-05, 8.416334458161145e-05] +flo.sou.air.vol.T=[2.931499938964844e+02, 2.923185424804688e+02, 2.922355651855469e+02, 2.921704711914062e+02, 2.921177062988281e+02, 2.920376281738281e+02, 2.919799194335938e+02, 2.91895263671875e+02, 2.91766357421875e+02, 2.916928405761719e+02, 2.916901550292969e+02, 2.915889892578125e+02, 2.914741516113281e+02, 2.914380493164062e+02, 2.919417114257812e+02, 2.923501281738281e+02, 2.928848876953125e+02, 2.9322802734375e+02, 2.934513549804688e+02, 2.935249938964844e+02, 2.934788818359375e+02, 2.935848693847656e+02, 2.936870727539062e+02, 2.937811279296875e+02, 2.939325561523438e+02, 2.9411083984375e+02, 2.940735473632812e+02, 2.94132080078125e+02, 2.945326232910156e+02, 2.946044006347656e+02, 2.946405334472656e+02, 2.946596374511719e+02, 2.946588439941406e+02, 2.946558227539062e+02, 2.946453857421875e+02, 2.946466369628906e+02, 2.945772399902344e+02, 2.943473815917969e+02, 2.940821838378906e+02, 2.937842712402344e+02, 2.935028991699219e+02, 2.93320068359375e+02, 2.933164672851562e+02, 2.935042114257812e+02, 2.934889831542969e+02, 2.934057922363281e+02, 2.930594177246094e+02, 2.929528198242188e+02, 2.928618469238281e+02, 2.927990417480469e+02, 2.92744873046875e+02, 2.92690185546875e+02, 2.926617736816406e+02, 2.925427856445312e+02, 2.924383239746094e+02, 2.9240283203125e+02, 2.923526916503906e+02, 2.923621520996094e+02, 2.9244873046875e+02, 2.923980712890625e+02, 2.921398010253906e+02, 2.921127319335938e+02, 2.921333618164062e+02, 2.920834350585938e+02, 2.924739379882812e+02, 2.927388000488281e+02, 2.928576049804688e+02, 2.929685668945312e+02, 2.931969604492188e+02, 2.934400634765625e+02, 2.934972839355469e+02, 2.935108947753906e+02, 2.934779052734375e+02, 2.9345458984375e+02, 2.935064697265625e+02, 2.9370654296875e+02, 2.936961364746094e+02, 2.93772705078125e+02, 2.940135803222656e+02, 2.940106811523438e+02, 2.940382690429688e+02, 2.940654602050781e+02, 2.940733337402344e+02, 2.940678100585938e+02, 2.940479431152344e+02, 2.9348876953125e+02, 2.933270263671875e+02, 2.935431823730469e+02, 2.934127502441406e+02, 2.931482238769531e+02, 2.929158020019531e+02, 2.928558959960938e+02, 2.927968444824219e+02, 2.927716064453125e+02, 2.928047485351562e+02, 2.928576049804688e+02, 2.928506774902344e+02, 2.929039611816406e+02, 2.929172668457031e+02, 2.928467102050781e+02, 2.92769287109375e+02] +flo.eas.air.vol.T=[2.931499938964844e+02, 2.923406677246094e+02, 2.922623901367188e+02, 2.922044067382812e+02, 2.9216015625e+02, 2.921150512695312e+02, 2.920831604003906e+02, 2.920299987792969e+02, 2.919519958496094e+02, 2.918868408203125e+02, 2.918280334472656e+02, 2.917862548828125e+02, 2.917401123046875e+02, 2.916893920898438e+02, 2.922530517578125e+02, 2.925891723632812e+02, 2.928086853027344e+02, 2.930666809082031e+02, 2.934681396484375e+02, 2.93734375e+02, 2.937283020019531e+02, 2.936611938476562e+02, 2.9358740234375e+02, 2.935848693847656e+02, 2.935906372070312e+02, 2.936140747070312e+02, 2.935455322265625e+02, 2.935663146972656e+02, 2.937973327636719e+02, 2.9384521484375e+02, 2.938708190917969e+02, 2.938938598632812e+02, 2.939152221679688e+02, 2.939352111816406e+02, 2.939469604492188e+02, 2.939659423828125e+02, 2.939197692871094e+02, 2.937207641601562e+02, 2.934502258300781e+02, 2.931285705566406e+02, 2.930461730957031e+02, 2.929959411621094e+02, 2.929480590820312e+02, 2.929805297851562e+02, 2.930130310058594e+02, 2.928660583496094e+02, 2.928458862304688e+02, 2.927803344726562e+02, 2.927174072265625e+02, 2.926792907714844e+02, 2.926462097167969e+02, 2.925997924804688e+02, 2.925637817382812e+02, 2.925018005371094e+02, 2.924644165039062e+02, 2.9243505859375e+02, 2.923846740722656e+02, 2.92373046875e+02, 2.922773742675781e+02, 2.922653503417969e+02, 2.922592163085938e+02, 2.922470703125e+02, 2.9225439453125e+02, 2.921317138671875e+02, 2.925153503417969e+02, 2.927294616699219e+02, 2.928516540527344e+02, 2.929875183105469e+02, 2.932818298339844e+02, 2.935324401855469e+02, 2.935526428222656e+02, 2.935294494628906e+02, 2.934958801269531e+02, 2.934661254882812e+02, 2.934929809570312e+02, 2.935508422851562e+02, 2.935168762207031e+02, 2.935738830566406e+02, 2.937959899902344e+02, 2.938152770996094e+02, 2.938360595703125e+02, 2.938638000488281e+02, 2.938693237304688e+02, 2.937723693847656e+02, 2.936621704101562e+02, 2.93826904296875e+02, 2.937349853515625e+02, 2.93406982421875e+02, 2.932682495117188e+02, 2.930095825195312e+02, 2.929009094238281e+02, 2.928940124511719e+02, 2.928761901855469e+02, 2.927814331054688e+02, 2.926857299804688e+02, 2.926377868652344e+02, 2.926719970703125e+02, 2.928818054199219e+02, 2.929176940917969e+02, 2.928750610351562e+02, 2.927850036621094e+02] +flo.nor.air.vol.T=[2.931499938964844e+02, 2.92318359375e+02, 2.922354736328125e+02, 2.921711730957031e+02, 2.921197509765625e+02, 2.920670166015625e+02, 2.920270385742188e+02, 2.919697265625e+02, 2.918894348144531e+02, 2.918211975097656e+02, 2.917609252929688e+02, 2.917135925292969e+02, 2.916621704101562e+02, 2.916082458496094e+02, 2.921094055175781e+02, 2.924425354003906e+02, 2.927513427734375e+02, 2.93046875e+02, 2.9329638671875e+02, 2.933694458007812e+02, 2.933462524414062e+02, 2.933589477539062e+02, 2.933826293945312e+02, 2.93411376953125e+02, 2.934274291992188e+02, 2.934424743652344e+02, 2.933733215332031e+02, 2.933729858398438e+02, 2.935304870605469e+02, 2.935362243652344e+02, 2.935711669921875e+02, 2.936034851074219e+02, 2.936326904296875e+02, 2.936584167480469e+02, 2.936778869628906e+02, 2.937033386230469e+02, 2.936663513183594e+02, 2.934836730957031e+02, 2.9323828125e+02, 2.92938232421875e+02, 2.928169555664062e+02, 2.927667846679688e+02, 2.927570495605469e+02, 2.927539672851562e+02, 2.927798156738281e+02, 2.927108459472656e+02, 2.926298522949219e+02, 2.925653686523438e+02, 2.925039672851562e+02, 2.924652709960938e+02, 2.924321594238281e+02, 2.923878479003906e+02, 2.923497314453125e+02, 2.922916870117188e+02, 2.922536010742188e+02, 2.922247009277344e+02, 2.921776733398438e+02, 2.92166259765625e+02, 2.921655578613281e+02, 2.921505126953125e+02, 2.920687255859375e+02, 2.920514831542969e+02, 2.920566101074219e+02, 2.919588928222656e+02, 2.923125915527344e+02, 2.925326843261719e+02, 2.926709289550781e+02, 2.928977966308594e+02, 2.9323095703125e+02, 2.934414978027344e+02, 2.934837646484375e+02, 2.934954833984375e+02, 2.934914855957031e+02, 2.934853820800781e+02, 2.934807434082031e+02, 2.934886169433594e+02, 2.934189147949219e+02, 2.934545288085938e+02, 2.936782836914062e+02, 2.937005920410156e+02, 2.9372412109375e+02, 2.937544250488281e+02, 2.93775634765625e+02, 2.937834167480469e+02, 2.937803955078125e+02, 2.937474975585938e+02, 2.936525268554688e+02, 2.93448974609375e+02, 2.932530517578125e+02, 2.930101623535156e+02, 2.929492492675781e+02, 2.929180908203125e+02, 2.928805847167969e+02, 2.928421630859375e+02, 2.927888488769531e+02, 2.927376708984375e+02, 2.927286987304688e+02, 2.927489929199219e+02, 2.9279296875e+02, 2.927554016113281e+02, 2.925433654785156e+02] +flo.wes.air.vol.T=[2.931499938964844e+02, 2.921127319335938e+02, 2.920301513671875e+02, 2.919742431640625e+02, 2.919439086914062e+02, 2.919264221191406e+02, 2.919386596679688e+02, 2.918870849609375e+02, 2.917911071777344e+02, 2.917210693359375e+02, 2.916390075683594e+02, 2.916207885742188e+02, 2.9163037109375e+02, 2.916624755859375e+02, 2.921773071289062e+02, 2.924990844726562e+02, 2.927305297851562e+02, 2.930121765136719e+02, 2.932732543945312e+02, 2.933692626953125e+02, 2.933729248046875e+02, 2.932033081054688e+02, 2.933352966308594e+02, 2.934600524902344e+02, 2.933799743652344e+02, 2.9334521484375e+02, 2.932667236328125e+02, 2.932881469726562e+02, 2.93469970703125e+02, 2.934952697753906e+02, 2.935228576660156e+02, 2.936145629882812e+02, 2.937348327636719e+02, 2.937986450195312e+02, 2.938140869140625e+02, 2.938337707519531e+02, 2.937934875488281e+02, 2.93607421875e+02, 2.9335791015625e+02, 2.930585021972656e+02, 2.929449157714844e+02, 2.928956909179688e+02, 2.928900451660156e+02, 2.928989562988281e+02, 2.929136047363281e+02, 2.928417663574219e+02, 2.927627868652344e+02, 2.926977233886719e+02, 2.926355590820312e+02, 2.925982666015625e+02, 2.925660095214844e+02, 2.925234069824219e+02, 2.924915771484375e+02, 2.924300842285156e+02, 2.923898010253906e+02, 2.923618469238281e+02, 2.923164367675781e+02, 2.923110961914062e+02, 2.923070373535156e+02, 2.922917175292969e+02, 2.922007446289062e+02, 2.92183837890625e+02, 2.921548767089844e+02, 2.920807800292969e+02, 2.924186401367188e+02, 2.926233520507812e+02, 2.927466430664062e+02, 2.928888244628906e+02, 2.932042541503906e+02, 2.934834289550781e+02, 2.935282592773438e+02, 2.935313110351562e+02, 2.935177917480469e+02, 2.935021057128906e+02, 2.934927673339844e+02, 2.935194396972656e+02, 2.934907836914062e+02, 2.935549926757812e+02, 2.937872924804688e+02, 2.938196716308594e+02, 2.938511962890625e+02, 2.938869323730469e+02, 2.939092407226562e+02, 2.939149780273438e+02, 2.939071350097656e+02, 2.93871337890625e+02, 2.937700805664062e+02, 2.935608215332031e+02, 2.933665771484375e+02, 2.931251831054688e+02, 2.930697937011719e+02, 2.930398864746094e+02, 2.930028686523438e+02, 2.929617309570312e+02, 2.929039001464844e+02, 2.928502502441406e+02, 2.928456420898438e+02, 2.929089660644531e+02, 2.929212951660156e+02, 2.92883056640625e+02, 2.927088623046875e+02] +flo.cor.air.vol.T=[2.931499938964844e+02, 2.927408142089844e+02, 2.926835632324219e+02, 2.926394348144531e+02, 2.926067504882812e+02, 2.925718994140625e+02, 2.92548095703125e+02, 2.925093078613281e+02, 2.924478454589844e+02, 2.923976745605469e+02, 2.923592224121094e+02, 2.923205261230469e+02, 2.9228125e+02, 2.922083435058594e+02, 2.926407165527344e+02, 2.929486999511719e+02, 2.931539916992188e+02, 2.933144836425781e+02, 2.935863952636719e+02, 2.937247314453125e+02, 2.937531433105469e+02, 2.937705383300781e+02, 2.938192138671875e+02, 2.938764343261719e+02, 2.939024353027344e+02, 2.939279174804688e+02, 2.938620300292969e+02, 2.9388330078125e+02, 2.9410302734375e+02, 2.941496276855469e+02, 2.941891174316406e+02, 2.942350158691406e+02, 2.942830505371094e+02, 2.943236694335938e+02, 2.943523254394531e+02, 2.943824462890625e+02, 2.943403930664062e+02, 2.941416931152344e+02, 2.938625183105469e+02, 2.935637817382812e+02, 2.935101623535156e+02, 2.934684753417969e+02, 2.934443359375e+02, 2.934390869140625e+02, 2.934469299316406e+02, 2.934013977050781e+02, 2.933359985351562e+02, 2.932850036621094e+02, 2.93236328125e+02, 2.932002258300781e+02, 2.931687927246094e+02, 2.931350402832031e+02, 2.931064147949219e+02, 2.930609741210938e+02, 2.930169677734375e+02, 2.929908447265625e+02, 2.929548950195312e+02, 2.929379272460938e+02, 2.929279479980469e+02, 2.929093933105469e+02, 2.928458557128906e+02, 2.928143615722656e+02, 2.928070678710938e+02, 2.926724243164062e+02, 2.929330444335938e+02, 2.930843505859375e+02, 2.931555480957031e+02, 2.93255615234375e+02, 2.935744018554688e+02, 2.939107666015625e+02, 2.939759521484375e+02, 2.940036926269531e+02, 2.940136108398438e+02, 2.940193176269531e+02, 2.940399780273438e+02, 2.940919494628906e+02, 2.940342712402344e+02, 2.940749206542969e+02, 2.943164978027344e+02, 2.943526611328125e+02, 2.943842468261719e+02, 2.944202270507812e+02, 2.944479064941406e+02, 2.944530029296875e+02, 2.944458312988281e+02, 2.9439111328125e+02, 2.942773742675781e+02, 2.940744934082031e+02, 2.938843994140625e+02, 2.936394958496094e+02, 2.935816955566406e+02, 2.935513000488281e+02, 2.935158081054688e+02, 2.934757385253906e+02, 2.934382019042969e+02, 2.934118347167969e+02, 2.933985595703125e+02, 2.934347229003906e+02, 2.934446716308594e+02, 2.934160461425781e+02, 2.933287353515625e+02] +sou.vav.m_flow=[3.233083017886024e-13, 1.145001369877718e-04, 1.145172718679532e-04, 1.144304187619127e-04, 1.142778055509552e-04, 1.141062894021161e-04, 1.139160958700813e-04, 1.139233718276955e-04, 1.13988142402377e-04, 1.140117165050469e-04, 1.141368629760109e-04, 1.139980377047323e-04, 1.139563391916454e-04, 1.059960052371025e-01, 1.609348803758621e-01, 2.179368734359741e-01, 3.226372897624969e-01, 3.360754847526551e-01, 2.330239862203598e-01, 1.787912249565125e-01, 1.717633008956909e-01, 1.707899272441864e-01, 1.706561744213104e-01, 1.706371307373047e-01, 1.706340610980988e-01, 1.706338673830032e-01, 1.706340312957764e-01, 1.706342548131943e-01, 1.706352233886719e-01, 1.706347614526749e-01, 1.706338822841644e-01, 1.706337183713913e-01, 1.706336140632629e-01, 1.706337034702301e-01, 1.706337779760361e-01, 1.706338226795197e-01, 1.706338971853256e-01, 1.706339120864868e-01, 1.706339418888092e-01, 1.70634001493454e-01, 1.141844186349772e-04, 1.143573681474663e-04, 1.139184605563059e-04, 1.35854661493795e-05, 6.125234222054132e-07, 1.138570951297879e-04, 1.141551256296225e-04, 1.143377594416961e-04, 1.144567941082641e-04, 1.143568588304333e-04, 1.142901674029417e-04, 1.143006229540333e-04, 1.140451058745384e-04, 1.144078923971392e-04, 1.143092740676366e-04, 1.142941327998415e-04, 1.144426569226198e-04, 1.140502354246564e-04, 1.138980442192405e-04, 1.139167798100971e-04, 1.150882235378958e-04, 1.144994530477561e-04, 1.141004977398552e-04, 1.059962585568428e-01, 1.609345078468323e-01, 1.69238954782486e-01, 1.704417318105698e-01, 1.705977767705917e-01, 1.70648604631424e-01, 1.706307381391525e-01, 1.706302613019943e-01, 1.706328243017197e-01, 1.706338226795197e-01, 1.706339567899704e-01, 1.706339567899704e-01, 1.706339567899704e-01, 1.70633852481842e-01, 1.706338375806808e-01, 1.706340163946152e-01, 1.706338971853256e-01, 1.706338971853256e-01, 1.706340163946152e-01, 1.706340909004211e-01, 1.706341654062271e-01, 1.706338226795197e-01, 1.706360578536987e-01, 1.706332862377167e-01, 1.70634388923645e-01, 1.706340461969376e-01, 1.706337034702301e-01, 1.140806780313142e-04, 1.140311069320887e-04, 1.140346212196164e-04, 1.141159300459549e-04, 1.146459326264448e-04, 1.152391123468988e-04, 1.148079099948518e-04, 4.04698439524509e-05, 9.6992498668097e-13, 5.65064801776316e-05, 1.139503510785289e-04] +eas.vav.m_flow=[3.070213896484708e-13, 1.087320997612551e-04, 1.087483688024804e-04, 1.08665888546966e-04, 1.085209732991643e-04, 1.083580937120132e-04, 1.081774826161563e-04, 1.081843947758898e-04, 1.082458984456025e-04, 1.082682865671813e-04, 1.083871247828938e-04, 1.082552917068824e-04, 1.08215695945546e-04, 1.006563752889633e-01, 1.52827650308609e-01, 1.606794893741608e-01, 1.6183140873909e-01, 1.62034273147583e-01, 1.620940268039703e-01, 1.620274633169174e-01, 1.620190888643265e-01, 1.620322316884995e-01, 1.620374321937561e-01, 1.620380878448486e-01, 1.620378047227859e-01, 1.620379835367203e-01, 1.62038192152977e-01, 1.620384156703949e-01, 1.620393395423889e-01, 1.620389074087143e-01, 1.620380729436874e-01, 1.620378941297531e-01, 1.620378047227859e-01, 1.620378792285919e-01, 1.620379686355591e-01, 1.620380133390427e-01, 1.620380878448486e-01, 1.620380878448486e-01, 1.62038117647171e-01, 1.620381772518158e-01, 1.08432286651805e-04, 1.085965195670724e-04, 1.081797236111015e-04, 1.29010877572e-05, 5.81667052301782e-07, 1.081214504665695e-04, 1.08404470665846e-04, 1.085779003915377e-04, 1.086909396690316e-04, 1.085960393538699e-04, 1.08532709418796e-04, 1.085426338249817e-04, 1.082999879145063e-04, 1.086445045075379e-04, 1.085508483811282e-04, 1.085364783648401e-04, 1.086775155272335e-04, 1.083048628061078e-04, 1.081603404600173e-04, 1.08178130176384e-04, 1.092905586119741e-04, 1.087314522010274e-04, 1.083525930880569e-04, 1.006566137075424e-01, 1.528272926807404e-01, 1.60713404417038e-01, 1.618555784225464e-01, 1.620037704706192e-01, 1.620520353317261e-01, 1.620350778102875e-01, 1.620346307754517e-01, 1.620370596647263e-01, 1.620379984378815e-01, 1.620381325483322e-01, 1.620381325483322e-01, 1.620381325483322e-01, 1.620380282402039e-01, 1.620380133390427e-01, 1.62038192152977e-01, 1.620380729436874e-01, 1.620380729436874e-01, 1.62038192152977e-01, 1.62038266658783e-01, 1.620383262634277e-01, 1.620380133390427e-01, 1.620401293039322e-01, 1.620374917984009e-01, 1.620385348796844e-01, 1.620382219552994e-01, 1.620378941297531e-01, 1.08333770185709e-04, 1.082866947399452e-04, 1.082900344044901e-04, 1.083672468666919e-04, 1.088705466827378e-04, 1.094338513212278e-04, 1.090243677026592e-04, 3.843114245682955e-05, 9.210642231555211e-13, 5.365991819417104e-05, 1.082100134226494e-04] +nor.vav.m_flow=[3.233083017886024e-13, 1.145001369877718e-04, 1.145172718679532e-04, 1.144304187619127e-04, 1.142778055509552e-04, 1.141062894021161e-04, 1.139160958700813e-04, 1.139233718276955e-04, 1.13988142402377e-04, 1.140117165050469e-04, 1.141368629760109e-04, 1.139980377047323e-04, 1.139563391916454e-04, 1.059960052371025e-01, 1.609348803758621e-01, 1.692032366991043e-01, 2.460278272628784e-01, 3.066927492618561e-01, 2.738927006721497e-01, 1.954501420259476e-01, 1.741079688072205e-01, 1.71120747923851e-01, 1.707030087709427e-01, 1.706437319517136e-01, 1.70634999871254e-01, 1.706339865922928e-01, 1.706340461969376e-01, 1.706342548131943e-01, 1.706352233886719e-01, 1.706347614526749e-01, 1.706338822841644e-01, 1.706337183713913e-01, 1.706336140632629e-01, 1.706337034702301e-01, 1.706337779760361e-01, 1.706338226795197e-01, 1.706338971853256e-01, 1.706339120864868e-01, 1.706339418888092e-01, 1.70634001493454e-01, 1.141844186349772e-04, 1.143573681474663e-04, 1.139184605563059e-04, 1.35854661493795e-05, 6.125234222054132e-07, 1.138570951297879e-04, 1.141551256296225e-04, 1.143377594416961e-04, 1.144567941082641e-04, 1.143568588304333e-04, 1.142901674029417e-04, 1.143006229540333e-04, 1.140451058745384e-04, 1.144078923971392e-04, 1.143092740676366e-04, 1.142941327998415e-04, 1.144426569226198e-04, 1.140502354246564e-04, 1.138980442192405e-04, 1.139167798100971e-04, 1.150882235378958e-04, 1.144994530477561e-04, 1.141004977398552e-04, 1.059962585568428e-01, 1.609345078468323e-01, 1.69238954782486e-01, 1.704417318105698e-01, 2.228749394416809e-01, 2.166227698326107e-01, 1.771335005760194e-01, 1.715531051158905e-01, 1.707646250724792e-01, 1.706526577472687e-01, 1.706366539001465e-01, 1.706343442201614e-01, 1.70634001493454e-01, 1.70633852481842e-01, 1.706338375806808e-01, 1.706340163946152e-01, 1.706338971853256e-01, 1.706338971853256e-01, 1.706340163946152e-01, 1.706340909004211e-01, 1.706341654062271e-01, 1.706338226795197e-01, 1.706360578536987e-01, 1.706332862377167e-01, 1.70634388923645e-01, 1.706340461969376e-01, 1.706337034702301e-01, 1.140806780313142e-04, 1.140311069320887e-04, 1.140346212196164e-04, 1.141159300459549e-04, 1.146459326264448e-04, 1.152391123468988e-04, 1.148079099948518e-04, 4.04698439524509e-05, 9.6992498668097e-13, 5.65064801776316e-05, 1.139503510785289e-04] +wes.vav.m_flow=[2.387944171827056e-13, 8.456941577605903e-05, 8.45820686663501e-05, 8.451791654806584e-05, 8.440519741270691e-05, 8.427851571468636e-05, 8.413803880102932e-05, 8.414341573370621e-05, 8.419125515501946e-05, 8.42086665215902e-05, 8.430109301116318e-05, 8.41985602164641e-05, 8.416776108788326e-05, 7.828828692436218e-02, 1.188659518957138e-01, 1.249729320406914e-01, 1.451009958982468e-01, 1.912979483604431e-01, 1.731528341770172e-01, 1.337871551513672e-01, 1.271076053380966e-01, 1.261792480945587e-01, 1.260509490966797e-01, 1.260326951742172e-01, 1.26029834151268e-01, 1.260296106338501e-01, 1.260297149419785e-01, 1.260298788547516e-01, 1.260305941104889e-01, 1.260302513837814e-01, 1.260296106338501e-01, 1.260294765233994e-01, 1.260294020175934e-01, 1.260294616222382e-01, 1.260295212268829e-01, 1.260295659303665e-01, 1.260296255350113e-01, 1.260296255350113e-01, 1.260296404361725e-01, 1.260296851396561e-01, 8.433622133452445e-05, 8.446395804639906e-05, 8.413978503085673e-05, 1.003417946776608e-05, 4.524077326095721e-07, 8.409446309087798e-05, 8.431458991253749e-05, 8.444947889074683e-05, 8.453740156255662e-05, 8.446358697256073e-05, 8.441432873951271e-05, 8.442204853054136e-05, 8.423332474194467e-05, 8.45012764330022e-05, 8.442843682132661e-05, 8.441726095043123e-05, 8.452696056338027e-05, 8.423711551586166e-05, 8.412470924668014e-05, 8.413854811806232e-05, 8.500376861775294e-05, 8.456890645902604e-05, 8.427423745160922e-05, 7.828847318887711e-02, 1.188656762242317e-01, 1.249993145465851e-01, 1.258876770734787e-01, 1.260029375553131e-01, 1.260404735803604e-01, 1.260272860527039e-01, 1.260269284248352e-01, 1.260288208723068e-01, 1.260295510292053e-01, 1.260296702384949e-01, 1.260296702384949e-01, 1.260296553373337e-01, 1.260295808315277e-01, 1.260295659303665e-01, 1.260297000408173e-01, 1.260296106338501e-01, 1.260296106338501e-01, 1.260297000408173e-01, 1.26029759645462e-01, 1.260298192501068e-01, 1.260295659303665e-01, 1.260312050580978e-01, 1.260291635990143e-01, 1.260299831628799e-01, 1.260297298431396e-01, 1.260294765233994e-01, 8.425959822488949e-05, 8.422298560617492e-05, 8.422558312304318e-05, 8.428563887719065e-05, 8.467709267279133e-05, 8.511521446052939e-05, 8.479673124384135e-05, 2.989088716276456e-05, 7.16383278653171e-13, 4.17354931414593e-05, 8.416334458161145e-05] cor.vav.m_flow_turbulent=[1.618800044059753e+00, 1.618800044059753e+00] -TSupSou.T=[2.931499938964844e+02, 2.931495056152344e+02, 2.931458435058594e+02, 2.931358032226562e+02, 2.931170959472656e+02, 2.9308837890625e+02, 2.930488891601562e+02, 2.929984130859375e+02, 2.929367980957031e+02, 2.928642578125e+02, 2.9278125e+02, 2.926883544921875e+02, 2.925862731933594e+02, 2.940543823242188e+02, 3.012536010742188e+02, 3.041015930175781e+02, 3.04128173828125e+02, 3.04144775390625e+02, 3.041934814453125e+02, 3.025943908691406e+02, 3.0099560546875e+02, 2.988601989746094e+02, 2.961329956054688e+02, 2.92982421875e+02, 2.911848754882812e+02, 2.911814575195312e+02, 2.911683959960938e+02, 2.91164306640625e+02, 2.911666564941406e+02, 2.911578979492188e+02, 2.911531066894531e+02, 2.91153564453125e+02, 2.911546020507812e+02, 2.911533813476562e+02, 2.911522827148438e+02, 2.91152099609375e+02, 2.911421203613281e+02, 2.911299743652344e+02, 2.911253051757812e+02, 2.911255798339844e+02, 2.911249694824219e+02, 2.911181945800781e+02, 2.911038513183594e+02, 2.910951538085938e+02, 2.910955200195312e+02, 2.910955200195312e+02, 2.910625610351562e+02, 2.910223083496094e+02, 2.909750061035156e+02, 2.909210815429688e+02, 2.908609313964844e+02, 2.90794921875e+02, 2.907234497070312e+02, 2.906467590332031e+02, 2.905648803710938e+02, 2.904784240722656e+02, 2.903876037597656e+02, 2.902929382324219e+02, 2.901950988769531e+02, 2.900940551757812e+02, 2.899898071289062e+02, 2.898826599121094e+02, 2.89774169921875e+02, 2.920848693847656e+02, 2.9705126953125e+02, 2.991414184570312e+02, 3.005529174804688e+02, 3.015361022949219e+02, 3.012593078613281e+02, 2.997869262695312e+02, 2.980138549804688e+02, 2.961917724609375e+02, 2.945567321777344e+02, 2.930409240722656e+02, 2.911516723632812e+02, 2.911522827148438e+02, 2.911497192382812e+02, 2.911525268554688e+02, 2.911328125e+02, 2.91119384765625e+02, 2.911340637207031e+02, 2.911440734863281e+02, 2.911637268066406e+02, 2.911700744628906e+02, 2.91156005859375e+02, 2.911220703125e+02, 2.911325988769531e+02, 2.911104736328125e+02, 2.911438903808594e+02, 2.91162109375e+02, 2.911543884277344e+02, 2.911483459472656e+02, 2.911357421875e+02, 2.911163330078125e+02, 2.910901489257812e+02, 2.910571594238281e+02, 2.91017822265625e+02, 2.909853515625e+02, 2.909873657226562e+02, 2.909892578125e+02, 2.909416809082031e+02] -TSupEas.T=[2.931499938964844e+02, 2.931494750976562e+02, 2.931458435058594e+02, 2.931358032226562e+02, 2.931170959472656e+02, 2.9308837890625e+02, 2.930488891601562e+02, 2.929984130859375e+02, 2.929367980957031e+02, 2.928642578125e+02, 2.9278125e+02, 2.926883544921875e+02, 2.925862731933594e+02, 2.934377746582031e+02, 2.990517578125e+02, 3.018667297363281e+02, 3.035316467285156e+02, 3.040437927246094e+02, 3.024023742675781e+02, 2.994114379882812e+02, 2.96458984375e+02, 2.938911743164062e+02, 2.916998596191406e+02, 2.911824340820312e+02, 2.911848754882812e+02, 2.911814575195312e+02, 2.911683959960938e+02, 2.91164306640625e+02, 2.911666564941406e+02, 2.911578979492188e+02, 2.911531066894531e+02, 2.91153564453125e+02, 2.911546020507812e+02, 2.911533813476562e+02, 2.911522827148438e+02, 2.91152099609375e+02, 2.911421203613281e+02, 2.911299743652344e+02, 2.911253051757812e+02, 2.911255798339844e+02, 2.911249389648438e+02, 2.911181945800781e+02, 2.911038513183594e+02, 2.910937805175781e+02, 2.910940856933594e+02, 2.910928039550781e+02, 2.91060302734375e+02, 2.910203857421875e+02, 2.90973388671875e+02, 2.909197387695312e+02, 2.908598022460938e+02, 2.907939453125e+02, 2.9072265625e+02, 2.906460876464844e+02, 2.905643310546875e+02, 2.904779357910156e+02, 2.9038720703125e+02, 2.902926025390625e+02, 2.901947937011719e+02, 2.900938110351562e+02, 2.899895935058594e+02, 2.898825073242188e+02, 2.897740173339844e+02, 2.9206005859375e+02, 2.967791442871094e+02, 2.989418029785156e+02, 3.004054565429688e+02, 3.012900390625e+02, 3.005987243652344e+02, 2.986140747070312e+02, 2.965625e+02, 2.946593627929688e+02, 2.929469604492188e+02, 2.913632507324219e+02, 2.911516418457031e+02, 2.911522827148438e+02, 2.911497192382812e+02, 2.911525268554688e+02, 2.911328125e+02, 2.91119384765625e+02, 2.911340637207031e+02, 2.911440734863281e+02, 2.911637268066406e+02, 2.911700744628906e+02, 2.91156005859375e+02, 2.911220703125e+02, 2.911325988769531e+02, 2.911104736328125e+02, 2.911438903808594e+02, 2.91162109375e+02, 2.917492065429688e+02, 2.916485290527344e+02, 2.91556396484375e+02, 2.914700927734375e+02, 2.913874816894531e+02, 2.913068542480469e+02, 2.912274780273438e+02, 2.911668395996094e+02, 2.911679382324219e+02, 2.911686706542969e+02, 2.910946655273438e+02] -TSupNor.T=[2.931499938964844e+02, 2.931495056152344e+02, 2.931458435058594e+02, 2.931358032226562e+02, 2.931170959472656e+02, 2.9308837890625e+02, 2.930488891601562e+02, 2.929984130859375e+02, 2.929367980957031e+02, 2.928642578125e+02, 2.9278125e+02, 2.926883544921875e+02, 2.925862731933594e+02, 2.936538696289062e+02, 3.000557250976562e+02, 3.035813293457031e+02, 3.041156921386719e+02, 3.041393432617188e+02, 3.041702880859375e+02, 3.041065979003906e+02, 3.031549987792969e+02, 3.021073913574219e+02, 3.009443054199219e+02, 2.996377563476562e+02, 2.982509460449219e+02, 2.967866821289062e+02, 2.957743530273438e+02, 2.946660766601562e+02, 2.926019592285156e+02, 2.911578979492188e+02, 2.911531066894531e+02, 2.91153564453125e+02, 2.911546020507812e+02, 2.911533813476562e+02, 2.911522827148438e+02, 2.91152099609375e+02, 2.911421203613281e+02, 2.911299743652344e+02, 2.911253051757812e+02, 2.911255798339844e+02, 2.917346801757812e+02, 2.916307067871094e+02, 2.915347595214844e+02, 2.914744567871094e+02, 2.914745483398438e+02, 2.914566650390625e+02, 2.913663024902344e+02, 2.912776489257812e+02, 2.911896362304688e+02, 2.911015014648438e+02, 2.910125732421875e+02, 2.909223937988281e+02, 2.908306579589844e+02, 2.907369079589844e+02, 2.906406860351562e+02, 2.905421752929688e+02, 2.904411926269531e+02, 2.903380126953125e+02, 2.902330017089844e+02, 2.901259460449219e+02, 2.900166015625e+02, 2.899051818847656e+02, 2.897931213378906e+02, 2.924835815429688e+02, 2.982366333007812e+02, 3.013579406738281e+02, 3.037171936035156e+02, 3.04129150390625e+02, 3.041622009277344e+02, 3.031086120605469e+02, 3.014095458984375e+02, 2.996698608398438e+02, 2.979666442871094e+02, 2.962858276367188e+02, 2.946354064941406e+02, 2.929495544433594e+02, 2.917220764160156e+02, 2.911525268554688e+02, 2.911328125e+02, 2.91119384765625e+02, 2.911340637207031e+02, 2.911440734863281e+02, 2.911637268066406e+02, 2.911700744628906e+02, 2.91156005859375e+02, 2.911220703125e+02, 2.911325988769531e+02, 2.911104736328125e+02, 2.911438903808594e+02, 2.91162109375e+02, 2.917664794921875e+02, 2.916630554199219e+02, 2.91568603515625e+02, 2.914803466796875e+02, 2.913961181640625e+02, 2.913141174316406e+02, 2.912335815429688e+02, 2.91171875e+02, 2.911727294921875e+02, 2.911732788085938e+02, 2.910984802246094e+02] -TSupWes.T=[2.931499938964844e+02, 2.931494445800781e+02, 2.931458129882812e+02, 2.931357727050781e+02, 2.931170654296875e+02, 2.930883483886719e+02, 2.930488891601562e+02, 2.929984130859375e+02, 2.92936767578125e+02, 2.928642578125e+02, 2.927812194824219e+02, 2.926883544921875e+02, 2.925862731933594e+02, 2.934045104980469e+02, 2.994394836425781e+02, 3.027063293457031e+02, 3.041237487792969e+02, 3.041370544433594e+02, 3.041672668457031e+02, 3.036383666992188e+02, 3.025285339355469e+02, 3.023258972167969e+02, 3.014772644042969e+02, 2.997886962890625e+02, 2.986607666015625e+02, 2.9770458984375e+02, 2.972422790527344e+02, 2.965642395019531e+02, 2.947913513183594e+02, 2.930454406738281e+02, 2.911824340820312e+02, 2.91153564453125e+02, 2.911546020507812e+02, 2.911533813476562e+02, 2.911522827148438e+02, 2.91152099609375e+02, 2.911421203613281e+02, 2.911299743652344e+02, 2.911253051757812e+02, 2.911255798339844e+02, 2.911249389648438e+02, 2.911181945800781e+02, 2.911038513183594e+02, 2.910936584472656e+02, 2.910939331054688e+02, 2.910924682617188e+02, 2.910599975585938e+02, 2.910201416015625e+02, 2.909732055664062e+02, 2.909195556640625e+02, 2.908596496582031e+02, 2.907938232421875e+02, 2.907225646972656e+02, 2.9064599609375e+02, 2.905642700195312e+02, 2.904778747558594e+02, 2.903871459960938e+02, 2.902925720214844e+02, 2.901947631835938e+02, 2.900937805175781e+02, 2.899895629882812e+02, 2.898824768066406e+02, 2.897740173339844e+02, 2.920873718261719e+02, 2.973292541503906e+02, 3.000194396972656e+02, 3.020053100585938e+02, 3.033873901367188e+02, 3.030831604003906e+02, 3.013448791503906e+02, 2.994138488769531e+02, 2.974968872070312e+02, 2.956663208007812e+02, 2.939026794433594e+02, 2.921943359375e+02, 2.911522827148438e+02, 2.911497192382812e+02, 2.911525268554688e+02, 2.911328125e+02, 2.91119384765625e+02, 2.911340637207031e+02, 2.911440734863281e+02, 2.911637268066406e+02, 2.911700744628906e+02, 2.91156005859375e+02, 2.911220703125e+02, 2.911325988769531e+02, 2.911104736328125e+02, 2.911438903808594e+02, 2.91162109375e+02, 2.911543884277344e+02, 2.911483459472656e+02, 2.911357421875e+02, 2.911163330078125e+02, 2.910901489257812e+02, 2.910571594238281e+02, 2.91017822265625e+02, 2.909853515625e+02, 2.909873962402344e+02, 2.909892883300781e+02, 2.909417724609375e+02] -TSupCor.T=[2.931499938964844e+02, 2.931495666503906e+02, 2.931459045410156e+02, 2.931358642578125e+02, 2.931171264648438e+02, 2.930884094238281e+02, 2.930489196777344e+02, 2.929984436035156e+02, 2.929367980957031e+02, 2.928642883300781e+02, 2.9278125e+02, 2.926883850097656e+02, 2.925863037109375e+02, 2.920929260253906e+02, 2.958234558105469e+02, 2.969350891113281e+02, 2.968287048339844e+02, 2.961016845703125e+02, 2.940262145996094e+02, 2.914722595214844e+02, 2.91249755859375e+02, 2.91206787109375e+02, 2.911813049316406e+02, 2.911824340820312e+02, 2.911848754882812e+02, 2.911814575195312e+02, 2.911683959960938e+02, 2.91164306640625e+02, 2.911666564941406e+02, 2.911578979492188e+02, 2.911531066894531e+02, 2.91153564453125e+02, 2.911546020507812e+02, 2.911533813476562e+02, 2.911522827148438e+02, 2.91152099609375e+02, 2.911421203613281e+02, 2.911299743652344e+02, 2.911253051757812e+02, 2.911255798339844e+02, 2.911249694824219e+02, 2.911181945800781e+02, 2.911038513183594e+02, 2.91094970703125e+02, 2.910953674316406e+02, 2.910953063964844e+02, 2.910623779296875e+02, 2.910221557617188e+02, 2.909748840332031e+02, 2.909209899902344e+02, 2.9086083984375e+02, 2.907948303222656e+02, 2.90723388671875e+02, 2.906466979980469e+02, 2.905648498535156e+02, 2.904783935546875e+02, 2.903875732421875e+02, 2.902929382324219e+02, 2.90195068359375e+02, 2.900940246582031e+02, 2.899897766113281e+02, 2.898826599121094e+02, 2.89774169921875e+02, 2.91107421875e+02, 2.933381652832031e+02, 2.938031616210938e+02, 2.937689514160156e+02, 2.933388671875e+02, 2.912018127441407e+02, 2.911843566894531e+02, 2.91166259765625e+02, 2.911630554199219e+02, 2.911720275878906e+02, 2.911599426269531e+02, 2.911516418457031e+02, 2.911522827148438e+02, 2.911497192382812e+02, 2.911525268554688e+02, 2.911328125e+02, 2.91119384765625e+02, 2.911340637207031e+02, 2.911440734863281e+02, 2.911637268066406e+02, 2.911700744628906e+02, 2.91156005859375e+02, 2.911220703125e+02, 2.911325988769531e+02, 2.911104736328125e+02, 2.911438903808594e+02, 2.91162109375e+02, 2.911543884277344e+02, 2.911483459472656e+02, 2.911357421875e+02, 2.911163330078125e+02, 2.910901489257812e+02, 2.910571594238281e+02, 2.91017822265625e+02, 2.909863891601562e+02, 2.909892272949219e+02, 2.909920043945312e+02, 2.909445495605469e+02] +TSupSou.T=[2.931499938964844e+02, 2.931495056152344e+02, 2.931458435058594e+02, 2.931358032226562e+02, 2.931170959472656e+02, 2.9308837890625e+02, 2.930488891601562e+02, 2.929984130859375e+02, 2.929367980957031e+02, 2.928642578125e+02, 2.9278125e+02, 2.926883544921875e+02, 2.925862731933594e+02, 2.940547485351562e+02, 3.012537536621094e+02, 3.041015930175781e+02, 3.04128173828125e+02, 3.04144775390625e+02, 3.041934814453125e+02, 3.02594482421875e+02, 3.009964599609375e+02, 2.9886083984375e+02, 2.961335144042969e+02, 2.929828491210938e+02, 2.911848754882812e+02, 2.911814575195312e+02, 2.911683959960938e+02, 2.91164306640625e+02, 2.911666564941406e+02, 2.911578979492188e+02, 2.911531066894531e+02, 2.91153564453125e+02, 2.911546020507812e+02, 2.911533813476562e+02, 2.911522827148438e+02, 2.91152099609375e+02, 2.911421203613281e+02, 2.911299743652344e+02, 2.911253051757812e+02, 2.911255798339844e+02, 2.911249389648438e+02, 2.911181945800781e+02, 2.911038513183594e+02, 2.910941467285156e+02, 2.910945129394531e+02, 2.910945129394531e+02, 2.910615844726562e+02, 2.910213623046875e+02, 2.9097412109375e+02, 2.909203186035156e+02, 2.908602600097656e+02, 2.907943420410156e+02, 2.907229919433594e+02, 2.906464233398438e+02, 2.905646667480469e+02, 2.904783020019531e+02, 2.903875732421875e+02, 2.902930297851562e+02, 2.901952514648438e+02, 2.900942993164062e+02, 2.899901123046875e+02, 2.89883056640625e+02, 2.897746276855469e+02, 2.920848693847656e+02, 2.970513000488281e+02, 2.991413879394531e+02, 3.005528564453125e+02, 3.015360717773438e+02, 3.012593078613281e+02, 2.997868957519531e+02, 2.980138244628906e+02, 2.961917419433594e+02, 2.945567016601562e+02, 2.930408935546875e+02, 2.911516723632812e+02, 2.911522827148438e+02, 2.911497192382812e+02, 2.911525268554688e+02, 2.911328430175781e+02, 2.91119384765625e+02, 2.911340637207031e+02, 2.911440734863281e+02, 2.911637268066406e+02, 2.911700744628906e+02, 2.91156005859375e+02, 2.911220703125e+02, 2.911325988769531e+02, 2.911104736328125e+02, 2.911438903808594e+02, 2.91162109375e+02, 2.911543884277344e+02, 2.911483154296875e+02, 2.911357421875e+02, 2.911163330078125e+02, 2.910901489257812e+02, 2.910571899414062e+02, 2.910178527832031e+02, 2.909849548339844e+02, 2.909886474609375e+02, 2.909905700683594e+02, 2.909439392089844e+02] +TSupEas.T=[2.931499938964844e+02, 2.931494750976562e+02, 2.931458435058594e+02, 2.931358032226562e+02, 2.931170959472656e+02, 2.9308837890625e+02, 2.930488891601562e+02, 2.929984130859375e+02, 2.929367980957031e+02, 2.928642578125e+02, 2.9278125e+02, 2.926883544921875e+02, 2.925862731933594e+02, 2.93438232421875e+02, 2.990519104003906e+02, 3.018668212890625e+02, 3.035317077636719e+02, 3.040438232421875e+02, 3.024024353027344e+02, 2.994114990234375e+02, 2.964591064453125e+02, 2.938912963867188e+02, 2.916999816894531e+02, 2.911824340820312e+02, 2.911848754882812e+02, 2.911814575195312e+02, 2.911683959960938e+02, 2.91164306640625e+02, 2.911666564941406e+02, 2.911578979492188e+02, 2.911531066894531e+02, 2.91153564453125e+02, 2.911546020507812e+02, 2.911533813476562e+02, 2.911522827148438e+02, 2.91152099609375e+02, 2.911421203613281e+02, 2.911299743652344e+02, 2.911253051757812e+02, 2.911255798339844e+02, 2.911249084472656e+02, 2.911181945800781e+02, 2.911038513183594e+02, 2.910930480957031e+02, 2.910933532714844e+02, 2.91092041015625e+02, 2.910594787597656e+02, 2.910195922851562e+02, 2.9097265625e+02, 2.909190673828125e+02, 2.908592224121094e+02, 2.9079345703125e+02, 2.907222595214844e+02, 2.906457824707031e+02, 2.905641479492188e+02, 2.904778747558594e+02, 2.9038720703125e+02, 2.90292724609375e+02, 2.901949768066406e+02, 2.900940856933594e+02, 2.899899291992188e+02, 2.898829040527344e+02, 2.897745056152344e+02, 2.9206005859375e+02, 2.967791748046875e+02, 2.989417724609375e+02, 3.004054565429688e+02, 3.012900695800781e+02, 3.005987243652344e+02, 2.986140747070312e+02, 2.965625305175781e+02, 2.946593627929688e+02, 2.929469909667969e+02, 2.9136328125e+02, 2.911516418457031e+02, 2.911522827148438e+02, 2.911497192382812e+02, 2.911525268554688e+02, 2.911328430175781e+02, 2.91119384765625e+02, 2.911340637207031e+02, 2.911440734863281e+02, 2.911637268066406e+02, 2.911700744628906e+02, 2.91156005859375e+02, 2.911220703125e+02, 2.911325988769531e+02, 2.911104736328125e+02, 2.911438903808594e+02, 2.91162109375e+02, 2.917494812011719e+02, 2.916487731933594e+02, 2.915565795898438e+02, 2.914702758789062e+02, 2.913876342773438e+02, 2.913070068359375e+02, 2.912276000976562e+02, 2.911664428710938e+02, 2.911688537597656e+02, 2.911696166992188e+02, 2.910969543457031e+02] +TSupNor.T=[2.931499938964844e+02, 2.931495056152344e+02, 2.931458435058594e+02, 2.931358032226562e+02, 2.931170959472656e+02, 2.9308837890625e+02, 2.930488891601562e+02, 2.929984130859375e+02, 2.929367980957031e+02, 2.928642578125e+02, 2.9278125e+02, 2.926883544921875e+02, 2.925862731933594e+02, 2.936542663574219e+02, 3.000558471679688e+02, 3.035814208984375e+02, 3.041156921386719e+02, 3.041393432617188e+02, 3.041702880859375e+02, 3.04106689453125e+02, 3.031558837890625e+02, 3.021081848144531e+02, 3.009449768066406e+02, 2.996383666992188e+02, 2.982514953613281e+02, 2.967871704101562e+02, 2.957747802734375e+02, 2.946664428710938e+02, 2.92602294921875e+02, 2.911578979492188e+02, 2.911531066894531e+02, 2.91153564453125e+02, 2.911546020507812e+02, 2.911533813476562e+02, 2.911522827148438e+02, 2.91152099609375e+02, 2.911421203613281e+02, 2.911299743652344e+02, 2.911253051757812e+02, 2.911255798339844e+02, 2.917351379394531e+02, 2.916311340332031e+02, 2.915351257324219e+02, 2.914747619628906e+02, 2.914748840332031e+02, 2.914565734863281e+02, 2.913660888671875e+02, 2.9127734375e+02, 2.911893005371094e+02, 2.911011657714844e+02, 2.910122985839844e+02, 2.909221496582031e+02, 2.908304748535156e+02, 2.907367858886719e+02, 2.906406555175781e+02, 2.905422058105469e+02, 2.904413146972656e+02, 2.903381958007812e+02, 2.902332763671875e+02, 2.901262817382812e+02, 2.900169982910156e+02, 2.899056396484375e+02, 2.897936401367188e+02, 2.924837036132812e+02, 2.982363586425781e+02, 3.013576965332031e+02, 3.037169494628906e+02, 3.04129150390625e+02, 3.041622009277344e+02, 3.031085815429688e+02, 3.014095153808594e+02, 2.996698303222656e+02, 2.979666442871094e+02, 2.962858276367188e+02, 2.946353454589844e+02, 2.929495239257812e+02, 2.917220458984375e+02, 2.911525268554688e+02, 2.911328430175781e+02, 2.91119384765625e+02, 2.911340637207031e+02, 2.911440734863281e+02, 2.911637268066406e+02, 2.911700744628906e+02, 2.91156005859375e+02, 2.911220703125e+02, 2.911325988769531e+02, 2.911104736328125e+02, 2.911438903808594e+02, 2.91162109375e+02, 2.917667236328125e+02, 2.916632690429688e+02, 2.915687866210938e+02, 2.914805297851562e+02, 2.91396240234375e+02, 2.913142395019531e+02, 2.912336730957031e+02, 2.911714782714844e+02, 2.911735229492188e+02, 2.91174072265625e+02, 2.911006469726562e+02] +TSupWes.T=[2.931499938964844e+02, 2.931494445800781e+02, 2.931458129882812e+02, 2.931357727050781e+02, 2.931170654296875e+02, 2.930883483886719e+02, 2.930488891601562e+02, 2.929984130859375e+02, 2.92936767578125e+02, 2.928642578125e+02, 2.927812194824219e+02, 2.926883544921875e+02, 2.925862731933594e+02, 2.934057922363281e+02, 2.994387512207031e+02, 3.027056579589844e+02, 3.041237487792969e+02, 3.041370544433594e+02, 3.041672668457031e+02, 3.036384582519531e+02, 3.025296325683594e+02, 3.023269958496094e+02, 3.014782409667969e+02, 2.9978955078125e+02, 2.986615600585938e+02, 2.977052917480469e+02, 2.97242919921875e+02, 2.965648193359375e+02, 2.947918701171875e+02, 2.930458679199219e+02, 2.91182861328125e+02, 2.91153564453125e+02, 2.911546020507812e+02, 2.911533813476562e+02, 2.911522827148438e+02, 2.91152099609375e+02, 2.911421203613281e+02, 2.911299743652344e+02, 2.911253051757812e+02, 2.911255798339844e+02, 2.911249084472656e+02, 2.911181945800781e+02, 2.911038513183594e+02, 2.910929565429688e+02, 2.910932312011719e+02, 2.910917358398438e+02, 2.910592346191406e+02, 2.910193786621094e+02, 2.909724731445312e+02, 2.909189147949219e+02, 2.908591003417969e+02, 2.907933654785156e+02, 2.9072216796875e+02, 2.906457214355469e+02, 2.905640869140625e+02, 2.904778137207031e+02, 2.903871765136719e+02, 2.902926940917969e+02, 2.901949462890625e+02, 2.900940551757812e+02, 2.899899291992188e+02, 2.898829040527344e+02, 2.897744750976562e+02, 2.920868835449219e+02, 2.973298645019531e+02, 3.000199584960938e+02, 3.020057373046875e+02, 3.033877563476562e+02, 3.030834655761719e+02, 3.013451538085938e+02, 2.994140625e+02, 2.974970703125e+02, 2.956664733886719e+02, 2.9390283203125e+02, 2.921944274902344e+02, 2.911522827148438e+02, 2.911497192382812e+02, 2.911525268554688e+02, 2.911328430175781e+02, 2.91119384765625e+02, 2.911340637207031e+02, 2.911440734863281e+02, 2.911637268066406e+02, 2.911700744628906e+02, 2.91156005859375e+02, 2.911220703125e+02, 2.911325988769531e+02, 2.911104736328125e+02, 2.911438903808594e+02, 2.91162109375e+02, 2.911543884277344e+02, 2.911483154296875e+02, 2.911357421875e+02, 2.911163330078125e+02, 2.910901489257812e+02, 2.910571899414062e+02, 2.910178527832031e+02, 2.909849548339844e+02, 2.909886779785156e+02, 2.909906005859375e+02, 2.909440307617188e+02] +TSupCor.T=[2.931499938964844e+02, 2.931495666503906e+02, 2.931459045410156e+02, 2.931358642578125e+02, 2.931171264648438e+02, 2.930884094238281e+02, 2.930489196777344e+02, 2.929984436035156e+02, 2.929367980957031e+02, 2.928642883300781e+02, 2.9278125e+02, 2.926883850097656e+02, 2.925863037109375e+02, 2.920928344726562e+02, 2.958237609863281e+02, 2.96935302734375e+02, 2.968288879394531e+02, 2.961018676757812e+02, 2.940263671875e+02, 2.914612731933594e+02, 2.912498168945312e+02, 2.91206787109375e+02, 2.911813049316406e+02, 2.911824340820312e+02, 2.911848754882812e+02, 2.911814575195312e+02, 2.911683959960938e+02, 2.91164306640625e+02, 2.911666564941406e+02, 2.911578979492188e+02, 2.911531066894531e+02, 2.91153564453125e+02, 2.911546020507812e+02, 2.911533813476562e+02, 2.911522827148438e+02, 2.91152099609375e+02, 2.911421203613281e+02, 2.911299743652344e+02, 2.911253051757812e+02, 2.911255798339844e+02, 2.911249389648438e+02, 2.911181945800781e+02, 2.911038513183594e+02, 2.91093994140625e+02, 2.910943908691406e+02, 2.910943603515625e+02, 2.910614318847656e+02, 2.91021240234375e+02, 2.909740295410156e+02, 2.909202270507812e+02, 2.908601684570312e+02, 2.907942810058594e+02, 2.907229614257812e+02, 2.906463623046875e+02, 2.905646362304688e+02, 2.90478271484375e+02, 2.903875427246094e+02, 2.902929992675781e+02, 2.901952209472656e+02, 2.900942687988281e+02, 2.899901123046875e+02, 2.89883056640625e+02, 2.897746276855469e+02, 2.911069641113281e+02, 2.933381958007812e+02, 2.938031921386719e+02, 2.937689819335938e+02, 2.933388977050781e+02, 2.912018737792969e+02, 2.911843566894531e+02, 2.91166259765625e+02, 2.911630554199219e+02, 2.911720275878906e+02, 2.911599426269531e+02, 2.911516418457031e+02, 2.911522827148438e+02, 2.911497192382812e+02, 2.911525268554688e+02, 2.911328430175781e+02, 2.91119384765625e+02, 2.911340637207031e+02, 2.911440734863281e+02, 2.911637268066406e+02, 2.911700744628906e+02, 2.91156005859375e+02, 2.911220703125e+02, 2.911325988769531e+02, 2.911104736328125e+02, 2.911438903808594e+02, 2.91162109375e+02, 2.911543884277344e+02, 2.911483154296875e+02, 2.911357421875e+02, 2.911163330078125e+02, 2.910901489257812e+02, 2.910571899414062e+02, 2.910178527832031e+02, 2.909859008789062e+02, 2.90990966796875e+02, 2.909937744140625e+02, 2.909472045898438e+02] From a42f9b4cc80df56b21ead6abc72f1540b9205693 Mon Sep 17 00:00:00 2001 From: JayHuLBL Date: Wed, 1 Apr 2020 22:42:55 -0700 Subject: [PATCH 09/10] updated single zone G36 reference result, #1853 --- ...gs_Air_Systems_SingleZone_VAV_Examples_Guideline36.txt | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/Buildings/Resources/ReferenceResults/Dymola/Buildings_Air_Systems_SingleZone_VAV_Examples_Guideline36.txt b/Buildings/Resources/ReferenceResults/Dymola/Buildings_Air_Systems_SingleZone_VAV_Examples_Guideline36.txt index 54cf3de5642..4248c3eecc4 100644 --- a/Buildings/Resources/ReferenceResults/Dymola/Buildings_Air_Systems_SingleZone_VAV_Examples_Guideline36.txt +++ b/Buildings/Resources/ReferenceResults/Dymola/Buildings_Air_Systems_SingleZone_VAV_Examples_Guideline36.txt @@ -1,4 +1,4 @@ -last-generated=2020-02-03 +last-generated=2020-04-01 statistics-initialization= { "linear": "19", @@ -15,7 +15,7 @@ statistics-simulation= time=[0e+00, 8.64e+05] controller.TZonCooSet=[3.031499938964844e+02, 3.031499938964844e+02, 3.031499938964844e+02, 3.031499938964844e+02, 2.981499938964844e+02, 2.981499938964844e+02, 2.981499938964844e+02, 2.981499938964844e+02, 3.031499938964844e+02, 3.031499938964844e+02, 3.031499938964844e+02, 3.031499938964844e+02, 3.031499938964844e+02, 3.031499938964844e+02, 2.981499938964844e+02, 2.981499938964844e+02, 2.981499938964844e+02, 2.981499938964844e+02, 3.031499938964844e+02, 3.031499938964844e+02, 3.031499938964844e+02, 3.031499938964844e+02, 3.031499938964844e+02, 3.031499938964844e+02, 2.981499938964844e+02, 2.981499938964844e+02, 2.981499938964844e+02, 2.981499938964844e+02, 3.031499938964844e+02, 3.031499938964844e+02, 3.031499938964844e+02, 3.031499938964844e+02, 3.031499938964844e+02, 3.031499938964844e+02, 2.981499938964844e+02, 2.981499938964844e+02, 2.981499938964844e+02, 2.981499938964844e+02, 3.031499938964844e+02, 3.031499938964844e+02, 3.031499938964844e+02, 3.031499938964844e+02, 3.031499938964844e+02, 3.031499938964844e+02, 2.981499938964844e+02, 2.981499938964844e+02, 2.981499938964844e+02, 2.981499938964844e+02, 3.031499938964844e+02, 3.031499938964844e+02, 3.031499938964844e+02, 3.031499938964844e+02, 3.031499938964844e+02, 3.031499938964844e+02, 2.981499938964844e+02, 2.981499938964844e+02, 2.981499938964844e+02, 2.981499938964844e+02, 3.031499938964844e+02, 3.031499938964844e+02, 3.031499938964844e+02, 3.031499938964844e+02, 3.031499938964844e+02, 3.031499938964844e+02, 2.981499938964844e+02, 2.981499938964844e+02, 2.981499938964844e+02, 2.981499938964844e+02, 3.031499938964844e+02, 3.031499938964844e+02, 3.031499938964844e+02, 3.031499938964844e+02, 3.031499938964844e+02, 3.031499938964844e+02, 2.981499938964844e+02, 2.981499938964844e+02, 2.981499938964844e+02, 2.981499938964844e+02, 3.031499938964844e+02, 3.031499938964844e+02, 3.031499938964844e+02, 3.031499938964844e+02, 3.031499938964844e+02, 3.031499938964844e+02, 2.981499938964844e+02, 2.981499938964844e+02, 2.981499938964844e+02, 2.981499938964844e+02, 3.031499938964844e+02, 3.031499938964844e+02, 3.031499938964844e+02, 3.031499938964844e+02, 3.031499938964844e+02, 3.031499938964844e+02, 2.981499938964844e+02, 2.981499938964844e+02, 2.981499938964844e+02, 2.981499938964844e+02, 3.031499938964844e+02, 3.031499938964844e+02, 3.031499938964844e+02] controller.TZonHeaSet=[2.881499938964844e+02, 2.881499938964844e+02, 2.881499938964844e+02, 2.881499938964844e+02, 2.931499938964844e+02, 2.931499938964844e+02, 2.931499938964844e+02, 2.931499938964844e+02, 2.881499938964844e+02, 2.881499938964844e+02, 2.881499938964844e+02, 2.881499938964844e+02, 2.881499938964844e+02, 2.881499938964844e+02, 2.931499938964844e+02, 2.931499938964844e+02, 2.931499938964844e+02, 2.931499938964844e+02, 2.881499938964844e+02, 2.881499938964844e+02, 2.881499938964844e+02, 2.881499938964844e+02, 2.881499938964844e+02, 2.881499938964844e+02, 2.931499938964844e+02, 2.931499938964844e+02, 2.931499938964844e+02, 2.931499938964844e+02, 2.881499938964844e+02, 2.881499938964844e+02, 2.881499938964844e+02, 2.881499938964844e+02, 2.881499938964844e+02, 2.881499938964844e+02, 2.931499938964844e+02, 2.931499938964844e+02, 2.931499938964844e+02, 2.931499938964844e+02, 2.881499938964844e+02, 2.881499938964844e+02, 2.881499938964844e+02, 2.881499938964844e+02, 2.881499938964844e+02, 2.881499938964844e+02, 2.931499938964844e+02, 2.931499938964844e+02, 2.931499938964844e+02, 2.931499938964844e+02, 2.881499938964844e+02, 2.881499938964844e+02, 2.881499938964844e+02, 2.881499938964844e+02, 2.881499938964844e+02, 2.881499938964844e+02, 2.931499938964844e+02, 2.931499938964844e+02, 2.931499938964844e+02, 2.931499938964844e+02, 2.881499938964844e+02, 2.881499938964844e+02, 2.881499938964844e+02, 2.881499938964844e+02, 2.881499938964844e+02, 2.881499938964844e+02, 2.931499938964844e+02, 2.931499938964844e+02, 2.931499938964844e+02, 2.931499938964844e+02, 2.881499938964844e+02, 2.881499938964844e+02, 2.881499938964844e+02, 2.881499938964844e+02, 2.881499938964844e+02, 2.881499938964844e+02, 2.931499938964844e+02, 2.931499938964844e+02, 2.931499938964844e+02, 2.931499938964844e+02, 2.881499938964844e+02, 2.881499938964844e+02, 2.881499938964844e+02, 2.881499938964844e+02, 2.881499938964844e+02, 2.881499938964844e+02, 2.931499938964844e+02, 2.931499938964844e+02, 2.931499938964844e+02, 2.931499938964844e+02, 2.881499938964844e+02, 2.881499938964844e+02, 2.881499938964844e+02, 2.881499938964844e+02, 2.881499938964844e+02, 2.881499938964844e+02, 2.931499938964844e+02, 2.931499938964844e+02, 2.931499938964844e+02, 2.931499938964844e+02, 2.881499938964844e+02, 2.881499938964844e+02, 2.881499938964844e+02] -controller.TZon=[2.931499938964844e+02, 2.881473969891876e+02, 2.881482727050781e+02, 2.881518127441406e+02, 2.931684936523437e+02, 2.984799499511719e+02, 2.985046325683594e+02, 2.982939086914063e+02, 2.929617033980385e+02, 2.885383069984683e+02, 2.881438903808594e+02, 2.881470031738281e+02, 2.881483093261719e+02, 2.881489929199219e+02, 2.931566467285156e+02, 2.931500244140625e+02, 2.931493041992188e+02, 2.931472900390625e+02, 2.8814404296875e+02, 2.881481628417969e+02, 2.881499633789062e+02, 2.881502563476562e+02, 2.8814921875e+02, 2.881501098632813e+02, 2.931499145507813e+02, 2.949094848632812e+02, 2.982092873032066e+02, 2.9325183353877e+02, 2.881426940917969e+02, 2.881476135253906e+02, 2.88148681640625e+02, 2.881494506835937e+02, 2.88149853515625e+02, 2.8815146484375e+02, 2.931792724609375e+02, 2.9844873046875e+02, 2.984605346679688e+02, 2.961649567134363e+02, 2.881479064941406e+02, 2.881466674804688e+02, 2.881494445800781e+02, 2.881505493164062e+02, 2.881483642578125e+02, 2.881521057128906e+02, 2.956010021483111e+02, 2.98486328125e+02, 2.984938171386719e+02, 2.982424560546875e+02, 2.916475036621094e+02, 2.881530029296875e+02, 2.881488647460938e+02, 2.881505676269531e+02, 2.881479614257813e+02, 2.881509704589844e+02, 2.967704232983986e+02, 2.985199890136719e+02, 2.985275146484375e+02, 2.982952270507812e+02, 2.927881852543665e+02, 2.886397863780443e+02, 2.881504516601562e+02, 2.881480285644531e+02, 2.881495361328125e+02, 2.881517700195312e+02, 2.971344251471858e+02, 2.985228881835938e+02, 2.985070007324219e+02, 2.982921813964844e+02, 2.922730895996094e+02, 2.881548747698459e+02, 2.881473083496094e+02, 2.881494934082031e+02, 2.881510803222656e+02, 2.881509582519531e+02, 2.958062673794121e+02, 2.98514404296875e+02, 2.985062866210938e+02, 2.983046936035156e+02, 2.924941528320313e+02, 2.881566706186225e+02, 2.881472778320312e+02, 2.881495178222656e+02, 2.881502258300781e+02, 2.881535766601563e+02, 2.973255167029181e+02, 2.985198669433594e+02, 2.985255859375e+02, 2.9833076171875e+02, 2.929348831852613e+02, 2.883401530932018e+02, 2.881475830078125e+02, 2.881506042480469e+02, 2.881489440917969e+02, 2.881522216796875e+02, 2.972349463339174e+02, 2.985709533691406e+02, 2.985785888671875e+02, 2.983741149902344e+02, 2.933544877584173e+02, 2.887426140416086e+02, 2.881472778320312e+02] -controller.yFan=[0e+00, 1.000000014901161e-01, 1.000000014901161e-01, 1.000000014901161e-01, 1.000000014901161e-01, 3.878005146980286e-01, 4.766607046127319e-01, 1.323237836360928e-01, 1.000000014901161e-01, 1.000000014901161e-01, 1.000000014901161e-01, 1.000000014901161e-01, 1.000000014901161e-01, 1.000000014901161e-01, 1.403476357460021e-01, 1.163115948438644e-01, 1.205558091402054e-01, 1.354843199253082e-01, 1.012919321656227e-01, 1.181986540555954e-01, 1.248602420091629e-01, 1.24708679318428e-01, 1.26663663983345e-01, 1.31609645485878e-01, 1.641223579645157e-01, 1.000000014901161e-01, 1.000000014901161e-01, 1.000000014901161e-01, 1.010279819369316e-01, 1.224449083209037e-01, 1.325532644987106e-01, 1.424947768449783e-01, 1.435788840055466e-01, 1.41326305270195e-01, 1.062046185135841e-01, 2.75421142578125e-01, 3.17880767583847e-01, 1.000000014901161e-01, 1.000000014901161e-01, 1.167882546782494e-01, 1.234372779726982e-01, 1.225341871380806e-01, 1.000000014901161e-01, 1.000000014901161e-01, 1.000000014901161e-01, 4.107333123683929e-01, 4.377687513828278e-01, 1.25851958990097e-01, 1.000000014901161e-01, 1.000000014901161e-01, 1.000000014901161e-01, 1.000000014901161e-01, 1.000000014901161e-01, 1.000000014901161e-01, 1.000000014901161e-01, 5.319328904151945e-01, 5.590478539466838e-01, 1.334637880325344e-01, 1.000000014901161e-01, 1.000000014901161e-01, 1.000000014901161e-01, 1.000000014901161e-01, 1.000000014901161e-01, 1.000000014901161e-01, 1.000000014901161e-01, 5.424169301986694e-01, 4.851850867271423e-01, 1.322575628757477e-01, 1.000000014901161e-01, 1.000000014901161e-01, 1.000000014901161e-01, 1.000000014901161e-01, 1.000000014901161e-01, 1.000000014901161e-01, 1.000000014901161e-01, 5.118907690048218e-01, 4.826422810554504e-01, 1.33268678188324e-01, 1.000000014901161e-01, 1.000000014901161e-01, 1.000000014901161e-01, 1.000000014901161e-01, 1.000000014901161e-01, 1.000000014901161e-01, 1.000000014901161e-01, 5.314900279045105e-01, 5.520755410194397e-01, 1.362323522567749e-01, 1.000000014901161e-01, 1.000000014901161e-01, 1.000000014901161e-01, 1.000000014901161e-01, 1.000000014901161e-01, 1.000000014901161e-01, 1.000000014901161e-01, 7.154659032821655e-01, 7.429064035415649e-01, 1.381339132785797e-01, 1.000000014901161e-01, 1.000000014901161e-01, 1.000000014901161e-01] -controller.yHeaCoi=[0e+00, 1.346672488378494e-01, 1.935041427612305e-01, 1.790156364440918e-01, 2.120179086923599e-01, 0e+00, 0e+00, 8.395742177963278e-02, 2.889516210381859e-02, 2.44380996501026e-01, 2.243234515190125e-01, 2.981006681919098e-01, 3.418640673160553e-01, 3.731964290142059e-01, 6.962750911712642e-01, 5.771267414093018e-01, 5.980831265449524e-01, 6.720947623252869e-01, 3.67638111114502e-01, 4.460379958152771e-01, 4.711068272590637e-01, 4.705199062824249e-01, 4.778920888900757e-01, 4.965091943740845e-01, 8.137672901153564e-01, 1.990049779415131e-01, 1.837079749128778e-01, 9.566564424072301e-01, 3.439611256122594e-01, 4.620048284530638e-01, 5.000720024108887e-01, 5.374818086624146e-01, 5.41540265083313e-01, 5.330143809318543e-01, 3.301199465990067e-01, 2.02949121594429e-01, 2.334639191627502e-01, 1.997622628639104e-01, 2.923702955245971e-01, 4.406996726989746e-01, 4.657204151153564e-01, 4.623091518878937e-01, 3.512954413890839e-01, 3.430504441261292e-01, 1.988063110375194e-01, 0e+00, 0e+00, 1.285071730613708e-01, 4.309284836053848e-02, 1.671515882015228e-01, 2.285992205142975e-01, 2.439712166786194e-01, 2.369507402181625e-01, 2.392259806394577e-01, 1.609673868529619e-01, 0e+00, 0e+00, 9.63530838489513e-02, 3.079398555797869e-02, 2.800004398162996e-01, 1.479459255933762e-01, 2.11392068862915e-01, 2.392169415950775e-01, 2.262555569410324e-01, 1.602632668821012e-01, 0e+00, 0e+00, 1.012307524681091e-01, 3.635398373007774e-02, 1.578692078697273e-01, 2.451905161142349e-01, 2.638688266277313e-01, 2.518783509731293e-01, 2.440766513347626e-01, 1.992699916983146e-01, 0e+00, 0e+00, 9.593619108200073e-02, 3.396088480949402e-02, 1.52905441962048e-01, 2.528146505355835e-01, 2.75022155046463e-01, 2.724565088748932e-01, 2.379721105098724e-01, 1.458087752516687e-01, 0e+00, 0e+00, 7.321202754974365e-02, 2.920810910443062e-02, 3.205200685809398e-01, 1.891326159238815e-01, 1.707372516393661e-01, 1.707276046276092e-01, 1.693162471055984e-01, 1.208432586309475e-01, 0e+00, 0e+00, 3.097404837608337e-02, 2.469692962847896e-02, 2.42183782686412e-01, 1.854859590530396e-01] +controller.TZon=[2.931499938964844e+02, 2.881473969891876e+02, 2.881482727050781e+02, 2.881518127441406e+02, 2.931684936523437e+02, 2.984799499511719e+02, 2.985046325683594e+02, 2.982939086914063e+02, 2.929618517615144e+02, 2.885377644376645e+02, 2.881438903808594e+02, 2.881469909667969e+02, 2.881483154296875e+02, 2.881490234375e+02, 2.931566467285156e+02, 2.931499938964844e+02, 2.931493225097656e+02, 2.931472595214844e+02, 2.88144091796875e+02, 2.881481628417969e+02, 2.881499938964844e+02, 2.881502258300781e+02, 2.88149267578125e+02, 2.881501220703125e+02, 2.931499267578125e+02, 2.949091491699219e+02, 2.982090548787447e+02, 2.932518858510743e+02, 2.881426696777344e+02, 2.881476135253906e+02, 2.88148681640625e+02, 2.881494506835937e+02, 2.881498291015625e+02, 2.881513732910156e+02, 2.931792724609375e+02, 2.984487609863281e+02, 2.984605163574219e+02, 2.961667782102099e+02, 2.881478881835938e+02, 2.881466674804688e+02, 2.881494445800781e+02, 2.881505493164062e+02, 2.881483581542969e+02, 2.881520935058594e+02, 2.95601876254453e+02, 2.984863891601562e+02, 2.98493798828125e+02, 2.98242529296875e+02, 2.916485534667969e+02, 2.881530578613281e+02, 2.881488647460938e+02, 2.881505981445313e+02, 2.881479614257813e+02, 2.881509643554688e+02, 2.967679461673893e+02, 2.9852001953125e+02, 2.985274841308594e+02, 2.982958618164063e+02, 2.927906244981158e+02, 2.886417111517978e+02, 2.881504516601562e+02, 2.881480163574219e+02, 2.8814951171875e+02, 2.881517761230469e+02, 2.97135113118642e+02, 2.9852294921875e+02, 2.985069885253906e+02, 2.98292138671875e+02, 2.922733154296875e+02, 2.881548732717672e+02, 2.881473083496094e+02, 2.881494812011719e+02, 2.881511596679687e+02, 2.881510192871094e+02, 2.958037872845023e+02, 2.98514404296875e+02, 2.985062744140625e+02, 2.983047424316406e+02, 2.924947021484375e+02, 2.881566738412367e+02, 2.881472778320312e+02, 2.881495178222656e+02, 2.881502258300781e+02, 2.881535705566406e+02, 2.973253935179198e+02, 2.985198974609375e+02, 2.98525537109375e+02, 2.98330712890625e+02, 2.929349395719013e+02, 2.8833667323101e+02, 2.881475830078125e+02, 2.881506225585937e+02, 2.881489440917969e+02, 2.881522155761719e+02, 2.972323147832113e+02, 2.985709533691406e+02, 2.985785888671875e+02, 2.983740356445313e+02, 2.933548014046583e+02, 2.887429493700995e+02, 2.881472778320312e+02] +controller.yFan=[0e+00, 1.000000014901161e-01, 1.000000014901161e-01, 1.000000014901161e-01, 1.000000014901161e-01, 3.878005146980286e-01, 4.766607046127319e-01, 1.323237836360928e-01, 1.000000014901161e-01, 1.000000014901161e-01, 1.000000014901161e-01, 1.000000014901161e-01, 1.000000014901161e-01, 1.000000014901161e-01, 1.403338611125945e-01, 1.16380587220192e-01, 1.205393239855766e-01, 1.354838043451309e-01, 1.012917414307594e-01, 1.182028904557228e-01, 1.248297542333603e-01, 1.247200131416321e-01, 1.267082586884499e-01, 1.315744578838348e-01, 1.64104089140892e-01, 1.000000014901161e-01, 1.000000014901161e-01, 1.000000014901161e-01, 1.010289803147316e-01, 1.224484354257583e-01, 1.325993686914444e-01, 1.424894064664841e-01, 1.436095803976059e-01, 1.414202213287354e-01, 1.062330111861229e-01, 2.755535244941711e-01, 3.178505003452301e-01, 1.000000014901161e-01, 1.000000014901161e-01, 1.167718887329102e-01, 1.23438723385334e-01, 1.224459260702133e-01, 1.000000014901161e-01, 1.000000014901161e-01, 1.000000014901161e-01, 4.110263288021088e-01, 4.376780092716217e-01, 1.258573561906814e-01, 1.000000014901161e-01, 1.000000014901161e-01, 1.000000014901161e-01, 1.000000014901161e-01, 1.000000014901161e-01, 1.000000014901161e-01, 1.000000014901161e-01, 5.320646762847929e-01, 5.589308619499186e-01, 1.334558725357083e-01, 1.000000014901161e-01, 1.000000014901161e-01, 1.000000014901161e-01, 1.000000014901161e-01, 1.000000014901161e-01, 1.000000014901161e-01, 1.000000014901161e-01, 5.426527857780457e-01, 4.851698279380798e-01, 1.322725892066955e-01, 1.000000014901161e-01, 1.000000014901161e-01, 1.000000014901161e-01, 1.000000014901161e-01, 1.000000014901161e-01, 1.000000014901161e-01, 1.000000014901161e-01, 5.119059681892395e-01, 4.82565712928772e-01, 1.332577228546143e-01, 1.000000014901161e-01, 1.000000014901161e-01, 1.000000014901161e-01, 1.000000014901161e-01, 1.000000014901161e-01, 1.000000014901161e-01, 1.000000014901161e-01, 5.31627893447876e-01, 5.519393563270569e-01, 1.362354457378387e-01, 1.000000014901161e-01, 1.000000014901161e-01, 1.000000014901161e-01, 1.000000014901161e-01, 1.000000014901161e-01, 1.000000014901161e-01, 1.000000014901161e-01, 7.154482007026672e-01, 7.428781867027283e-01, 1.381087124347687e-01, 1.000000014901161e-01, 1.000000014901161e-01, 1.000000014901161e-01] +controller.yHeaCoi=[0e+00, 1.346672488378494e-01, 1.935041427612305e-01, 1.790156364440918e-01, 2.120179086923599e-01, 0e+00, 0e+00, 8.395602703094504e-02, 2.889339082684255e-02, 2.446364369068341e-01, 2.243505120277405e-01, 2.982364237308502e-01, 3.419321954250336e-01, 3.730229020118713e-01, 6.962068200111384e-01, 5.774660706520081e-01, 5.980022311210632e-01, 6.720965504646301e-01, 3.676523089408875e-01, 4.460538148880005e-01, 4.709916412830353e-01, 4.705629765987396e-01, 4.780601441860199e-01, 4.963765799999237e-01, 8.136751055717468e-01, 1.990050971508026e-01, 1.836502086988352e-01, 9.570732951512348e-01, 3.440223217010503e-01, 4.620180726051328e-01, 5.002459287643433e-01, 5.374613761901855e-01, 5.416564106941223e-01, 5.333696603775024e-01, 3.313167929649353e-01, 2.030448019504547e-01, 2.334241509437561e-01, 1.99762062998379e-01, 2.925101757049561e-01, 4.406378567218781e-01, 4.657258689403534e-01, 4.619762778282165e-01, 3.514616966247558e-01, 3.43066543340683e-01, 1.988062135839161e-01, 0e+00, 0e+00, 1.284914612770081e-01, 4.308150559663772e-02, 1.670916467905045e-01, 2.286597192287445e-01, 2.43714189529419e-01, 2.368945091962814e-01, 2.391678780317306e-01, 1.532663098407384e-01, 0e+00, 0e+00, 9.613857269286916e-02, 3.076769802589591e-02, 2.787750076534712e-01, 1.479532420635223e-01, 2.114121466875076e-01, 2.393431901931763e-01, 2.262888222932816e-01, 1.650037112238108e-01, 0e+00, 0e+00, 1.012376546859741e-01, 3.635163232684135e-02, 1.579340413193938e-01, 2.45196208357811e-01, 2.638564109802246e-01, 2.511780321598053e-01, 2.439424335956573e-01, 1.992701272137765e-01, 0e+00, 0e+00, 9.591522812843324e-02, 3.39548297226429e-02, 1.527580213596486e-01, 2.524780631065369e-01, 2.750135898590088e-01, 2.724126279354095e-01, 2.378788352012634e-01, 1.641151662052026e-01, 0e+00, 0e+00, 7.323243618011474e-02, 2.920712783735128e-02, 3.238622159304389e-01, 1.891890466213226e-01, 1.706521660089493e-01, 1.706563293933868e-01, 1.69410228729248e-01, 1.284814841322203e-01, 0e+00, 0e+00, 3.101736903190613e-02, 2.469300698798865e-02, 2.420060820621827e-01, 1.855018883943558e-01] controller.yCooCoi=[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, 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, 0e+00] From 25f3e2564c0c7be67809c81039805fc1e00b8754 Mon Sep 17 00:00:00 2001 From: JayHuLBL Date: Thu, 2 Apr 2020 13:17:34 -0700 Subject: [PATCH 10/10] corrected parameter declaration to avoid OCT translation error, #1853 --- .../G36_PR1/AHUs/MultiZone/VAV/Controller.mo | 20 +++++++++---------- 1 file changed, 10 insertions(+), 10 deletions(-) diff --git a/Buildings/Controls/OBC/ASHRAE/G36_PR1/AHUs/MultiZone/VAV/Controller.mo b/Buildings/Controls/OBC/ASHRAE/G36_PR1/AHUs/MultiZone/VAV/Controller.mo index d4b047da0df..797f33f1ef3 100644 --- a/Buildings/Controls/OBC/ASHRAE/G36_PR1/AHUs/MultiZone/VAV/Controller.mo +++ b/Buildings/Controls/OBC/ASHRAE/G36_PR1/AHUs/MultiZone/VAV/Controller.mo @@ -10,9 +10,8 @@ block Controller "Multizone AHU controller that composes subsequences for contro annotation (Dialog(group="System and building parameters")); parameter Real AFlo[numZon]( - final unit=fill("m2", numZon), - final quantity=fill("Area", numZon)) - "Floor area of each zone" + each final unit="m2", + final quantity=fill("Area", numZon)) "Floor area of each zone" annotation (Dialog(group="System and building parameters")); parameter Boolean have_occSen=false @@ -89,7 +88,8 @@ block Controller "Multizone AHU controller that composes subsequences for contro parameter Buildings.Controls.OBC.CDL.Types.SimpleController controllerTypeMinOut= Buildings.Controls.OBC.CDL.Types.SimpleController.PI - "Type of controller" annotation (Dialog(group="Economizer PID controller")); + "Type of controller" + annotation (Dialog(group="Economizer PID controller")); parameter Real kMinOut(final unit="1")=0.05 "Gain of controller for minimum outdoor air intake" @@ -275,18 +275,18 @@ block Controller "Multizone AHU controller that composes subsequences for contro annotation (Dialog(tab="Minimum outdoor airflow rate", group="Nominal conditions")); parameter Real VOutPerAre_flow[numZon]( - final unit = fill("m3/(s.m2)", outAirSetPoi.numZon))=fill(3e-4, outAirSetPoi.numZon) + each final unit = "m3/(s.m2)")=fill(3e-4, outAirSetPoi.numZon) "Outdoor air rate per unit area" annotation (Dialog(tab="Minimum outdoor airflow rate", group="Nominal conditions")); parameter Real VOutPerPer_flow[numZon]( - final unit=fill("m3/s", numZon), + each final unit="m3/s", final quantity=fill("VolumeFlowRate", numZon))=fill(2.5e-3, outAirSetPoi.numZon) "Outdoor air rate per person" annotation (Dialog(tab="Minimum outdoor airflow rate", group="Nominal conditions")); parameter Real minZonPriFlo[numZon]( - final unit=fill("m3/s", numZon), + each final unit="m3/s", final quantity=fill("VolumeFlowRate", numZon)) "Minimum expected zone primary flow rate" annotation (Dialog(tab="Minimum outdoor airflow rate", group="Nominal conditions")); @@ -362,21 +362,21 @@ block Controller "Multizone AHU controller that composes subsequences for contro final unit="K", final displayUnit="degC", final quantity="ThermodynamicTemperature")=supTemSetPoi.maxSet - "Initial setpoint for supply temperature control" + "Initial setpoint for supply temperature control" annotation (Dialog(tab="Supply air temperature", group="Trim and respond for reseting TSup setpoint")); parameter Real maxSetSupTem( final unit="K", final displayUnit="degC", final quantity="ThermodynamicTemperature")=supTemSetPoi.TSupSetMax - "Maximum setpoint for supply temperature control" + "Maximum setpoint for supply temperature control" annotation (Dialog(tab="Supply air temperature", group="Trim and respond for reseting TSup setpoint")); parameter Real minSetSupTem( final unit="K", final displayUnit="degC", final quantity="ThermodynamicTemperature")=supTemSetPoi.TSupSetDes - "Minimum setpoint for supply temperature control" + "Minimum setpoint for supply temperature control" annotation (Dialog(tab="Supply air temperature", group="Trim and respond for reseting TSup setpoint")); parameter Real delTimSupTem(