Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Add CO2 features to large office complex air #4

Merged
Show file tree
Hide file tree
Changes from 88 commits
Commits
Show all changes
93 commits
Select commit Hold shift + click to select a range
6816e89
First implementation of the large office EPlus testcase
terrancelu92 Oct 18, 2022
068f20a
Remove unnecessary resource files
terrancelu92 Oct 18, 2022
6ce5f05
add required json
terrancelu92 Oct 18, 2022
2eca204
Create an example to run the testcase
terrancelu92 Oct 19, 2022
8ef6206
Remove unnecessary files
terrancelu92 Oct 19, 2022
3f69a0f
Update run_testcase.py
terrancelu92 Oct 19, 2022
d1e8a4c
remove unnecessary files
terrancelu92 Oct 19, 2022
0f32df7
Remove unnecessary files
terrancelu92 Oct 19, 2022
626f1e7
Merge pull request #23 from terrancelu92/issue406_spawnSupport
SenHuang19 Oct 25, 2022
a4bee0d
Remove unnecessary files
terrancelu92 Oct 26, 2022
11a8f02
rename the testcase name following the BOPTEST testcase naming format
terrancelu92 Oct 26, 2022
a692f35
Change the naming of the models
terrancelu92 Oct 26, 2022
f46741b
Implementation of the controller file for large office eplus testcase
terrancelu92 Oct 27, 2022
f1e0ba2
Revise the run file of the testcase
terrancelu92 Nov 4, 2022
60ee4b7
Add the documentation for the testcase
terrancelu92 Nov 4, 2022
d4c8f45
Set upper and lower bounds to the inputs of the testcases
terrancelu92 Nov 4, 2022
63a4dea
Update .env
terrancelu92 Nov 4, 2022
06bd1d2
Revise documentation html and remove limits of the inputs
terrancelu92 Nov 7, 2022
62f41d9
Create test_multizone_large_office_eplus.py
terrancelu92 Jan 27, 2023
c303487
Merge branch 'master' into issue406_spawnSupport
terrancelu92 Jun 14, 2023
d79c75f
Update wrapped.mo
terrancelu92 Jun 14, 2023
35227cd
Enhance the model annotations
terrancelu92 Jun 16, 2023
1eb6958
Update the airside baseclasses
terrancelu92 Jun 16, 2023
f3fcdae
Update the base models in the package building control emulator
terrancelu92 Jun 16, 2023
fb507ad
Change model diagram and connection
terrancelu92 Jun 19, 2023
20f96a9
Add description to the overwrite and read blocks
terrancelu92 Jun 19, 2023
22f82c7
Add the unit modifier
terrancelu92 Jun 20, 2023
f96f37e
Remove the original zone-level overwrite and read blocks
terrancelu92 Jun 20, 2023
9145c42
Enhanced the testcase by adding the KPI outputs
terrancelu92 Jun 20, 2023
ef4ec23
Add airside power output and change the spawn exe version
terrancelu92 Jun 20, 2023
44bd492
Update the documentation
terrancelu92 Jun 20, 2023
d0409f2
Delete the EPlus only testcase
terrancelu92 Jul 28, 2023
fbda598
Add case study resource files
terrancelu92 Jul 31, 2023
bfa7c8f
Add large office emulator fmu and a python example
terrancelu92 Aug 1, 2023
a9b552e
Update resource files
terrancelu92 Aug 1, 2023
32ddd79
Add documentation
terrancelu92 Aug 9, 2023
2b53564
Merge Lingzhe's revision into the file
terrancelu92 Aug 12, 2023
08949fa
Add the testcase documentation and include figures.
lzwang26 Aug 15, 2023
f75eb81
Add documentations on Model HVAC and Chiller Plant
lzwang26 Aug 15, 2023
592755e
Finish adding documentations for component-level models.
lzwang26 Aug 16, 2023
4384cce
Change model names for model 'Floor'
lzwang26 Aug 16, 2023
3fe4772
Finished changing model names on model 'Floor'.
lzwang26 Aug 16, 2023
d9b2dc7
Finished changing the model names on model 'duaFanAirHanUni'
lzwang26 Aug 16, 2023
9493482
Finished changing the model names on model 'cooCoi'
lzwang26 Aug 16, 2023
51311f5
Finished changing the model names on model 'VAVSupFan'
lzwang26 Aug 16, 2023
2705843
Finished changing model names on model 'Mixing Box'
lzwang26 Aug 16, 2023
30fe822
Finished changing model names on model 'FivZonVAVNoVec'
lzwang26 Aug 16, 2023
98a0b1c
Finished changing model names of model 'ChillerPlant'
lzwang26 Aug 16, 2023
f5740ce
Finished changing model names of model 'BoilerPlant'
lzwang26 Aug 16, 2023
a085b36
Finished changing model names on model 'LoadWrapper'
lzwang26 Aug 16, 2023
3ce83b1
Finished changing model names on model 'whoBui96'
lzwang26 Aug 16, 2023
8fb47bc
Finished changing the model names.
lzwang26 Aug 17, 2023
0e59212
Merge pull request #1 from lzwang26/Documentations
terrancelu92 Aug 17, 2023
b1af402
Fix some errors
terrancelu92 Aug 17, 2023
7449e54
Add link to model 'HVAC'
lzwang26 Aug 18, 2023
63826f3
Finishing adding links.
lzwang26 Aug 18, 2023
74049d8
Finish adding links and documentations.
lzwang26 Aug 18, 2023
44ade9a
Finish adding revision history.
lzwang26 Aug 18, 2023
a90b613
Finished adding cross-references, missing documentations, and revisio…
lzwang26 Aug 18, 2023
a235f35
Changing model names according to conventions.
lzwang26 Aug 18, 2023
eedd416
Merge pull request #2 from lzwang26/Documentations
terrancelu92 Aug 19, 2023
0e404e3
Update the model and documentation
terrancelu92 Aug 20, 2023
622bfdd
Revise the revision history
terrancelu92 Aug 20, 2023
1c6764a
Update wrapped model and fmu
terrancelu92 Aug 20, 2023
6a2f488
running testing case results
terrancelu92 Aug 21, 2023
18e83a4
Merge branch 'ibpsa:master' into issue406_largeoffice_spawn
terrancelu92 Aug 21, 2023
1b48315
Add all testing references file
terrancelu92 Aug 22, 2023
592a978
Finalized the documentation. Marked yellow for unclear values.
lzwang26 Aug 22, 2023
c9f5db5
Merge pull request #3 from lzwang26/Documentations
terrancelu92 Aug 23, 2023
12d7299
Modified the html file
terrancelu92 Aug 23, 2023
5ee1b1f
Remove unnecessary folders
terrancelu92 Aug 23, 2023
ee1379d
Restructure the baseclasses package
terrancelu92 Aug 25, 2023
d773922
Delete unnecessary files
terrancelu92 Aug 25, 2023
9bd5ea7
Revise the zone air capacitance
terrancelu92 Aug 25, 2023
756895c
Revert "Revise the zone air capacitance"
terrancelu92 Aug 26, 2023
550e56e
Merge branch 'ibpsa:master' into issue406_largeoffice_spawn
terrancelu92 Aug 29, 2023
80fd944
Remove unnecessary changes
terrancelu92 Aug 29, 2023
84e6176
Revert the unnecessary cases
terrancelu92 Aug 29, 2023
a1796a8
Add CO2 to building volume model
GuowenLi-PhD Jul 8, 2024
7dea355
Add CO2 features to mixed air room and fresh air source models
GuowenLi-PhD Jul 9, 2024
98185ac
Model Error: failed to initialize/start the model
GuowenLi-PhD Jul 9, 2024
1449703
Add example models for components and a success testcase model
GuowenLi-PhD Jul 12, 2024
589de8d
Merge branch 'issue1_addCO2_success_testcase' into issue1_addCO2_larg…
GuowenLi-PhD Jul 12, 2024
469aa89
Successfully add CO2 features to each zonal volume and fresh air
GuowenLi-PhD Jul 12, 2024
a67e682
move LoadWrapper after HVAC enable success simulation
GuowenLi-PhD Jul 12, 2024
cef1d0d
Add CO2 measurements to zone-level Read Block required by BOPTEST
GuowenLi-PhD Jul 12, 2024
55b0db4
Add CO2 sensors to AHU supply/return/fresh air
GuowenLi-PhD Jul 15, 2024
bb71761
Clean up the testcase
GuowenLi-PhD Jul 15, 2024
2e6ebf5
Multiply occupant number of middle floor by 10 times
GuowenLi-PhD Jul 18, 2024
b5d56d3
Delete the boil plant pump new curves
GuowenLi-PhD Jul 18, 2024
53053d5
Ignore backup files
GuowenLi-PhD Jul 18, 2024
b8f3b9c
Uncheck each 'store as one file' to show all model packages
GuowenLi-PhD Jul 18, 2024
a537fab
Remove backup files and keep original files
GuowenLi-PhD Jul 19, 2024
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Original file line number Diff line number Diff line change
Expand Up @@ -134,20 +134,23 @@ model Airside "Air side system"
"Heat exchanger effectiveness of vav 1";
final parameter Real alpha = 0.8 "Sizing factor";

package MediumAir = Buildings.Media.Air "Medium model for air";
//package MediumAir = Buildings.Media.Air "Medium model for air";
package MediumAir = Buildings.Media.Air(extraPropertiesNames={"CO2"}) "Buildings library air media package with CO2";
package MediumCHW = Buildings.Media.Water "Medium model for chilled water";
package MediumHeaWat = Buildings.Media.Water "Medium model for heating water";

Modelica.Blocks.Interfaces.RealInput loa[15] "Load from external calculator"
annotation (Placement(transformation(extent={{-128,46},{-100,74}}),
iconTransformation(extent={{-128,16},{-100,44}})));
iconTransformation(extent={{-128,36},{-100,64}})));
Modelica.Blocks.Interfaces.RealOutput TZon[15] "Zone air temperature"
annotation (Placement(transformation(extent={{200,-10},{220,10}}),
iconTransformation(extent={{100,-10},{120,10}})));
iconTransformation(extent={{100,-10},{120,10}})));
Modelica.Blocks.Interfaces.RealInput TDryBul "Zone air dry bulb temperature"
annotation (Placement(transformation(extent={{-128,-14},{-100,14}}),
iconTransformation(extent={{-128,-34},{-100,-6}})));

Modelica.Blocks.Interfaces.RealInput numOcc[15] "Number of occupant"
annotation (Placement(transformation(extent={{-128,6},{-100,34}}),
iconTransformation(extent={{-128,6},{-100,34}})));
MultizoneOfficeComplexAir.BaseClasses.HVACSide.BaseClasses.AirsideFloor
floor1(
duaFanAirHanUni(
Expand All @@ -158,9 +161,10 @@ model Airside "Air side system"
Fan_Ti=600,
booleanExpression(y=if floor1.duaFanAirHanUni.TOut < 283.15 then floor1.duaFanAirHanUni.On
else true)),
fivZonVAV(vol(V=200000)),
fivZonVAV(vol(each V=200000)),
redeclare package MediumAir = MediumAir,
redeclare package MediumHeaWat = MediumHeaWat,
C_start=fill(400e-6*Modelica.Media.IdealGases.Common.SingleGasesData.CO2.MM/Modelica.Media.IdealGases.Common.SingleGasesData.Air.MM, MediumAir.nC),
PreDroCoiAir=PreDroCoiAir,
PreDroMixingBoxAir=PreDroMixingBoxAir,
PreDroCooWat=PreDroCooWat,
Expand Down Expand Up @@ -232,6 +236,7 @@ model Airside "Air side system"
fivZonVAV(vol(V=200000)),
redeclare package MediumAir = MediumAir,
redeclare package MediumHeaWat = MediumHeaWat,
C_start=fill(400e-6*Modelica.Media.IdealGases.Common.SingleGasesData.CO2.MM/Modelica.Media.IdealGases.Common.SingleGasesData.Air.MM, MediumAir.nC),
PreDroCoiAir=PreDroCoiAir,
PreDroMixingBoxAir=PreDroMixingBoxAir,
PreDroCooWat=PreDroCooWat,
Expand Down Expand Up @@ -303,6 +308,7 @@ model Airside "Air side system"
fivZonVAV(vol(V=200000)),
redeclare package MediumAir = MediumAir,
redeclare package MediumHeaWat = MediumHeaWat,
C_start=fill(400e-6*Modelica.Media.IdealGases.Common.SingleGasesData.CO2.MM/Modelica.Media.IdealGases.Common.SingleGasesData.Air.MM, MediumAir.nC),
PreDroCoiAir=PreDroCoiAir,
PreDroMixingBoxAir=PreDroMixingBoxAir,
PreDroCooWat=PreDroCooWat,
Expand Down Expand Up @@ -365,9 +371,12 @@ model Airside "Air side system"
nPorts=3,
redeclare package Medium = MediumAir,
each p(displayUnit="Pa") = 100000,
each C=fill(400e-6*Modelica.Media.IdealGases.Common.SingleGasesData.CO2.MM/
Modelica.Media.IdealGases.Common.SingleGasesData.Air.MM, MediumAir.nC),
use_T_in=true) "Source"
annotation (Placement(transformation(extent={{40,30},{60,50}})));


Modelica.Blocks.Sources.Constant TSupAirSet[n](k=273.15 + 12.88)
"AHU supply air temperature setpoint"
annotation (Placement(transformation(extent={{-70,46},{-50,66}})));
Expand All @@ -376,7 +385,7 @@ model Airside "Air side system"
annotation (Placement(transformation(extent={{-70,16},{-50,36}})));
Modelica.Blocks.Sources.BooleanExpression onZon[n](each y=true)
"Zone VAV terminal on signal"
annotation (Placement(transformation(extent={{40,62},{60,82}})));
annotation (Placement(transformation(extent={{40,60},{60,80}})));

MultizoneOfficeComplexAir.BaseClasses.HVACSide.BaseClasses.Component.AirSide.AirHandlingUnit.BaseClasses.ZoneSetpoint
TZonAirSet[15](
Expand Down Expand Up @@ -411,7 +420,7 @@ equation
annotation (Line(points={{38,44},{-38,44},{-38,1.77636e-15},{-114,
1.77636e-15}}, color={0,0,127}));
connect(floor1.port_Exh_Air, sou[1].ports[1]) annotation (Line(
points={{113.375,30.5},{90,30.5},{90,42.6667},{60,42.6667}},
points={{113.375,30.5},{90,30.5},{90,38.6667},{60,38.6667}},
color={0,140,72},
thickness=0.5));
connect(floor1.port_Fre_Air, sou[1].ports[2]) annotation (Line(
Expand All @@ -426,16 +435,17 @@ equation
100},{-36,86},{106,86},{106,28.75},{112.438,28.75}},
color={255,0,255}));
connect(floor1.OnZon, onZon[1].y) annotation (Line(points={{112.438,21.75},{
108,21.75},{108,22},{104,22},{104,72},{61,72}},
108,21.75},{108,22},{104,22},{104,70},{61,70}},
color={255,0,255}));
for j in 1:5 loop
connect(loa[(1 - 1)*5 + j], floor1.Q_flow[j]);
connect(floor1.TZon[j], TZon[(1-1)*5+j]);
connect(TZonAirSet[(1 - 1)*5 + j].SetPoi[1], floor1.zonCooTSet[j])
annotation (Line(points={{20,99},{96,99},{96,55},{112.438,55}}, color={0,
annotation (Line(points={{20,99.5},{96,99.5},{96,55},{112.438,55}},
color={0,
0,127}));
connect(TZonAirSet[(1 - 1)*5 + j].SetPoi[2], floor1.zonHeaTSet[j])
annotation (Line(points={{20,101},{96,101},{96,51.5},{112.438,51.5}},
annotation (Line(points={{20,100.5},{96,100.5},{96,51.5},{112.438,51.5}},
color={0,0,127}));
end for;

Expand Down Expand Up @@ -474,8 +484,8 @@ equation
end for;
connect(booRep.y, TZonAirSet.Occ)
annotation (Line(points={{-9,100},{-4,100}}, color={255,0,255}));
connect(floor1.TOut, TDryBul) annotation (Line(points={{136.813,18.25},{
136.813,0},{-84,0},{-84,1.77636e-15},{-114,1.77636e-15}},
connect(floor1.TOut, TDryBul) annotation (Line(points={{136.812,18.25},{
136.812,0},{-84,0},{-84,0},{-114,0}},
color={0,0,127}));
connect(floor2.TOut, TDryBul);
connect(floor3.TOut, TDryBul);
Expand All @@ -487,6 +497,15 @@ equation
connect(reaToBooOcc.y, booRep.u)
annotation (Line(points={{-39,100},{-32,100}}, color={255,0,255}));

connect(numOcc[1:5], floor1.nPeo) annotation (Line(points={{-114,17.2},{-96,
17.2},{-96,22},{92,22},{92,35.75},{112.438,35.75}},
color={0,0,127}));
connect(numOcc[6:10], floor2.nPeo) annotation (Line(points={{-114,21.8667},{
92,21.8667},{92,35.75},{112.438,35.75}},
color={0,0,127}));
connect(numOcc[11:15], floor3.nPeo) annotation (Line(points={{-114,26.5333},{
-96,26.5333},{-96,22},{92,22},{92,35.75},{112.438,35.75}},
color={0,0,127}));
annotation (Icon(coordinateSystem(preserveAspectRatio=false, extent={{-100,-100},
{100,100}}), graphics={
Rectangle(
Expand Down
Loading