Buildings.ThermalZones.Detailed.Validation.LBNL_71T.RoomB

Validation models for LBNL 71T

Information

This package contains models that validate room B of the test cells 71T at the Lawrence Berkeley National Laboratory.

Extends from Modelica.Icons.ExamplesPackage (Icon for packages containing runnable examples).

Package Content

Name Description
Buildings.ThermalZones.Detailed.Validation.LBNL_71T.RoomB.ElectroChromicWindow ElectroChromicWindow Validation model for the correct implementation of Electrochromic Window

Buildings.ThermalZones.Detailed.Validation.LBNL_71T.RoomB.ElectroChromicWindow Buildings.ThermalZones.Detailed.Validation.LBNL_71T.RoomB.ElectroChromicWindow

Validation model for the correct implementation of Electrochromic Window

Buildings.ThermalZones.Detailed.Validation.LBNL_71T.RoomB.ElectroChromicWindow

Information

This model tests the correct implementation of electrochromic window. The model represents the middle test cell (RoomB) of the window test facility 71T.

Extends from Modelica.Icons.Example (Icon for runnable examples).

Parameters

TypeNameDefaultDescription
TemperatureT_start273.15 + 24Initial value [K]
IntegernConExtWin1Number of constructions with a window
IntegernConExt0Number of constructions without a window
IntegernConBou5Number of surface that are connected to constructions that are modeled inside the room
IntegernSurBou0Number of surface that are connected to the room air volume
IntegernConPar0Number of surface that are partitions
GenericmatExtWalmatExtWal(nLay=3, absIR_a=0....71T: South Wall
GenericmatCeilmatCeil(nLay=3, absIR_a=0.9,...71T: Ceiling
GenericmatFlomatFlo(final nLay=4, absIR_a...71T: Floor
GenericmatEWWalmatEWWal(final nLay=2, absIR...71T: East West Wall
GenericmatNWalmatNWal(final nLay=4, absIR_...71T: North Wall
DoubleElectrochromicAir13ClearglaSysglaSys(UFra=2, haveInteriorS...Data record for the glazing system

Connectors

TypeNameDescription
BusweaBus 

Modelica definition

model ElectroChromicWindow "Validation model for the correct implementation of Electrochromic Window" extends Modelica.Icons.Example; package MediumA = Buildings.Media.Air "Medium model"; parameter Modelica.Units.SI.Temperature T_start=273.15 + 24 "Initial value"; parameter Integer nConExtWin=1 "Number of constructions with a window"; parameter Integer nConExt=0 "Number of constructions without a window"; parameter Integer nConBou=5 "Number of surface that are connected to constructions that are modeled inside the room"; parameter Integer nSurBou=0 "Number of surface that are connected to the room air volume"; parameter Integer nConPar=0 "Number of surface that are partitions"; MixedAir roo( redeclare package Medium = MediumA, nConExt=nConExt, nConExtWin=nConExtWin, nConPar=nConPar, nConBou=nConBou, nSurBou=nSurBou, T_start=T_start, datConExtWin( layers={matExtWal}, each A=10.22, glaSys={glaSys}, each hWin=3.13, each wWin=2.782751, each fFra=0.000001, each til=Buildings.Types.Tilt.Wall, azi={Buildings.Types.Azimuth.S}), datConBou( layers={matFlo,matCeil,matEWWal,matNWal,matEWWal}, A={13.94,13.94,15.33,10.22,15.33}, til={Buildings.Types.Tilt.Floor,Buildings.Types.Tilt.Ceiling,Buildings.Types.Tilt.Wall, Buildings.Types.Tilt.Wall,Buildings.Types.Tilt.Wall}), AFlo=13.94, hRoo=3.37, intConMod=Buildings.HeatTransfer.Types.InteriorConvection.Temperature, extConMod=Buildings.HeatTransfer.Types.ExteriorConvection.TemperatureWind, conBou(opa(T(each start = T_start))), energyDynamics=Modelica.Fluid.Types.Dynamics.FixedInitial) "Room model"; BoundaryConditions.WeatherData.ReaderTMY3 weaDat1( relHum=0, TDewPoi(displayUnit="K"), filNam= Modelica.Utilities.Files.loadResource("modelica://Buildings/Resources/weatherdata/USA_CA_San.Francisco.Intl.AP.724940_TMY3.mos"), pAtmSou=Buildings.BoundaryConditions.Types.DataSource.File, calTSky=Buildings.BoundaryConditions.Types.SkyTemperatureCalculation.HorizontalRadiation, computeWetBulbTemperature=false); Modelica.Blocks.Sources.Constant uSha(k=0) "Control signal for the shading device"; Modelica.Blocks.Routing.Replicator replicator(nout=max(1, nConExtWin)) "Signal replicator"; parameter Buildings.HeatTransfer.Data.OpaqueConstructions.Generic matExtWal( nLay=3, absIR_a=0.9, absIR_b=0.9, absSol_a=0.6, absSol_b=0.6, material={Buildings.HeatTransfer.Data.Solids.Generic( x=0.000701, k=45.345, c=502.416, d=7833.028),Buildings.HeatTransfer.Data.Solids.Generic( x=0.0127, k=0.12, c=1210, d=540),Buildings.HeatTransfer.Data.Solids.Generic( x=0.133, k=0.047, c=1006, d=93.84)}) "71T: South Wall"; parameter Buildings.HeatTransfer.Data.OpaqueConstructions.Generic matCeil( nLay=3, absIR_a=0.9, absIR_b=0.9, absSol_a=0.6, absSol_b=0.6, material={Buildings.HeatTransfer.Data.Solids.Generic( x=0.009525, k=0.12, c=1210, d=540),Buildings.HeatTransfer.Data.Solids.Generic( x=0.133, k=0.047, c=1006, d=93.84),Buildings.HeatTransfer.Data.Solids.Generic( x=0.015875, k=0.17, c=1090, d=800)}) "71T: Ceiling"; parameter Buildings.HeatTransfer.Data.OpaqueConstructions.Generic matFlo( final nLay=4, absIR_a=0.9, absIR_b=0.9, absSol_a=0.6, absSol_b=0.6, material={Buildings.HeatTransfer.Data.Solids.Generic( x=5.28, k=1, c=0, d=0),Buildings.HeatTransfer.Data.Solids.Generic( x=0.01905, k=0.15, c=1630, d=608),Buildings.HeatTransfer.Data.Solids.Generic( x=0.01905, k=0.12, c=1210, d=540),Buildings.HeatTransfer.Data.Solids.Generic( x=0.22, k=1, c=0, d=0)}) "71T: Floor"; parameter Buildings.HeatTransfer.Data.OpaqueConstructions.Generic matEWWal( final nLay=2, absIR_a=0.9, absIR_b=0.9, absSol_a=0.6, absSol_b=0.6, material={Buildings.HeatTransfer.Data.Solids.Generic( x=0.133, k=0.047, c=1006, d=93.84),Buildings.HeatTransfer.Data.Solids.Generic( x=0.015875, k=0.17, c=1090, d=800)}) "71T: East West Wall"; parameter Buildings.HeatTransfer.Data.OpaqueConstructions.Generic matNWal( final nLay=4, absIR_a=0.9, absIR_b=0.9, absSol_a=0.6, absSol_b=0.6, material={Buildings.HeatTransfer.Data.Solids.Generic( x=0.015875, k=0.17, c=1090, d=800),Buildings.HeatTransfer.Data.Solids.Generic( x=0.009525, k=0.12, c=1210, d=540),Buildings.HeatTransfer.Data.Solids.Generic( x=0.133, k=0.047, c=1006, d=93.84),Buildings.HeatTransfer.Data.Solids.Generic( x=0.015875, k=0.17, c=1090, d=800)}) "71T: North Wall"; parameter HeatTransfer.Data.GlazingSystems.DoubleElectrochromicAir13Clear glaSys( UFra=2, haveInteriorShade=false, haveExteriorShade=false) "Data record for the glazing system"; BoundaryConditions.WeatherData.Bus weaBus; Modelica.Blocks.Routing.Multiplex3 multiplex3_1 "Multiplex"; Modelica.Blocks.Sources.Constant qRadGai_flow(k=0) "Radiative heat gain"; Modelica.Blocks.Sources.Constant qConGai_flow(k=0) "Convective heat gain"; Modelica.Blocks.Sources.Constant qLatGai_flow(k=0) "Latent heat gain"; Modelica.Blocks.Sources.Constant uWin(k=1) "Control signal for electrochromic window"; Modelica.Blocks.Sources.CombiTimeTable refRes( tableOnFile=true, tableName="EnergyPlus", fileName=Modelica.Utilities.Files.loadResource( "modelica://Buildings/Resources/Data/ThermalZones/Detailed/Validation/LBNL_71T/RoomB/EnergyPlusHeatingCoolingPower.txt"), columns=2:2) "Data reader with heating and cooling power from EnergyPlus. The output should be compared to roo.heaPorAir.Q_flow."; Modelica.Thermal.HeatTransfer.Sources.PrescribedHeatFlow preHea "Prescribed heat flow for heating and cooling"; Controls.Continuous.LimPID conHea( Td=60, initType=Modelica.Blocks.Types.Init.InitialState, yMin=-1, k=5, Ti=30) "Controller for heating"; Modelica.Blocks.Math.Gain gaiHea(k=1E4) "Gain for heating"; Modelica.Blocks.Sources.Constant TRooSet(k=297.15) "Set point for room air"; Modelica.Thermal.HeatTransfer.Sensors.TemperatureSensor TRooAir "Room air temperature"; equation connect(uSha.y, replicator.u); connect(roo.uSha, replicator.y); connect(weaBus, roo.weaBus); connect(weaBus, weaDat1.weaBus); connect(qRadGai_flow.y, multiplex3_1.u1[1]); connect(qConGai_flow.y, multiplex3_1.u2[1]); connect(qLatGai_flow.y, multiplex3_1.u3[1]); connect(multiplex3_1.y, roo.qGai_flow); connect(uWin.y, roo.uWin[1]); connect(preHea.port, roo.heaPorAir); connect(gaiHea.y, preHea.Q_flow); connect(conHea.y, gaiHea.u); connect(TRooSet.y, conHea.u_s); connect(preHea.port, TRooAir.port); connect(TRooAir.T, conHea.u_m); end ElectroChromicWindow;