Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
77 commits
Select commit Hold shift + click to select a range
efaa95c
Updates for MSL4
dhblum Apr 6, 2022
dd17c43
Merge branch 'master' into msl4
dhblum May 3, 2022
802c533
Updates for MSL4
dhblum May 3, 2022
f80e8e1
OM update except external files
dhblum May 3, 2022
237b782
Updates for msl4
dhblum May 3, 2022
a70b882
Initial msl4 for multizone_office_simple_air
dhblum May 12, 2022
2a5636f
Merge branch 'master' into issue422_om_msl4
dhblum Feb 2, 2023
ac1d7db
Update twozone_apartment_hydronic to Buildings 9.1.0 and IDEAS 3.0
dhblum Feb 2, 2023
a198462
Update uses annotations
dhblum Feb 2, 2023
67c52fd
Initial implementation of OM in parser.py
dhblum Mar 3, 2023
a8c2656
Initialize fmu when using OM
dhblum Mar 6, 2023
e7ef80b
Load IBPSA, Buildings, and IDEAS libraries from MODELICAPATH
dhblum Mar 10, 2023
f0f5016
Only import OMPython if using OpenModelica
dhblum Mar 10, 2023
9342365
Small edit
dhblum Mar 10, 2023
718e87a
Merge branch 'master' into issue422_om_msl4_parser
dhblum Mar 19, 2023
0c938d0
Merge branch 'master' into issue422_om_msl4
dhblum Mar 19, 2023
4d5dd45
Merge branch 'issue422_om_msl4_parser' into issue422_om_msl4
dhblum Mar 19, 2023
d9ae371
Update test cases to Modelica 4
EttoreZ Apr 16, 2025
53a2982
Merge branch 'master' into issue422_om_msl4
EttoreZ Apr 16, 2025
e568497
Update libraries versions BETESTestAir
EttoreZ Apr 19, 2025
0403dfb
Update library versions bestest hydronic and hydronic heat pump
EttoreZ May 6, 2025
3c8c95b
Update test cases to last version of libraries
EttoreZ Jul 22, 2025
d9534f0
Merge branch 'master' into issue422_om_msl4
EttoreZ Jul 22, 2025
38fbbc5
Merge branch 'master' into issue422_om_msl4
EttoreZ Sep 26, 2025
f780305
Update library versions to Buildings 12.1 and IDEAS 3.0 BOPTEST
EttoreZ Sep 30, 2025
8582839
Added operative temperature output for both zones
Jaap-Neven Oct 7, 2025
5f46e82
Add output documentation
Jaap-Neven Oct 7, 2025
947445f
add outputs in python docs
Jaap-Neven Oct 7, 2025
7d62542
added operative temperature in KPIs
Jaap-Neven Oct 7, 2025
ce8c1c1
update BacNET keys
Jaap-Neven Oct 7, 2025
afe57b5
updated testing of twozone testcase, and added release notes
Jaap-Neven Oct 7, 2025
0b7dbae
only kept operative temperatures in kpis.json file for tdis_tot calcu…
Jaap-Neven Oct 7, 2025
2c16dbc
adapted release notes
Jaap-Neven Oct 7, 2025
599882b
missing .
Jaap-Neven Oct 7, 2025
8a936d3
Update parser.py , pymodelica dependancy conditional andupdate OM fun
EttoreZ Oct 9, 2025
d7d9f27
Merge branch 'master' into issue422_om_msl4
EttoreZ Oct 10, 2025
7a57c95
Update parser with CO2 unit correction for Dymola and name changes fo…
EttoreZ Oct 10, 2025
cd22d9f
Update compile_fmu to take tool inline argument during compilation
EttoreZ Oct 10, 2025
ca18b66
Update makefile and Dockerfile to compile with OpenModelica [ci skip]
EttoreZ Oct 10, 2025
df5335e
Merge branch 'issue422_om_msl4' into issue791_twozone_apartment_opera…
Jaap-Neven Oct 14, 2025
fe2c9c5
Added operative temperature in thermal zone, to avoid extending twice…
Jaap-Neven Oct 14, 2025
01eb90e
Merge pull request #798 from Jaap-Neven/issue791_twozone_apartment_op…
EttoreZ Oct 14, 2025
0bfd056
Update makefile
EttoreZ Oct 29, 2025
fff03b4
Update worker container to ubuntu 24 [ci skip]
EttoreZ Oct 29, 2025
e39802f
Update weather file bestest_hydronic and hydronic_heat pump
EttoreZ Oct 29, 2025
ab9659d
Update generate data scripts to remove JModelica dependancy
EttoreZ Oct 29, 2025
4791380
Update pump and fan models for bestest_hydronic and bestest_hydronic_hp
EttoreZ Oct 29, 2025
b61429e
Update fan model, economizer control and VAV box control [ci skip]
EttoreZ Oct 30, 2025
6dfc081
Update pump to preconfigured model reduce radiator elements
EttoreZ Oct 31, 2025
9dbb3eb
Update singlezone commercial hydronic to avoid crash
EttoreZ Oct 31, 2025
4db7a70
Update twozone aparment model cleanup
EttoreZ Oct 31, 2025
364af7c
Update model occupancy, setpoints and air change according to #539 [c…
EttoreZ Nov 5, 2025
9bd80e3
Update data scripts to create weather.csv and handle uncertainty in f…
EttoreZ Nov 7, 2025
bc68ffe
Update parser to remove JModelica, modify openmodelica, and update te…
EttoreZ Nov 7, 2025
986bb81
Update test cases compile_fmu.py, kpis.json and other minor changes […
EttoreZ Nov 7, 2025
2084717
Update twozone_apartment_hydronic by fixing issues reported in #806
EttoreZ Nov 7, 2025
7ed6873
Update testing scripts to handle unit tests with OpenModelica, also t…
EttoreZ Nov 7, 2025
9321450
Update travis file [ci skip]
EttoreZ Nov 7, 2025
f54bddd
Merge branch 'master' into issue422_om_msl4
dhblum Feb 11, 2026
47d36c6
Update makefile to remove redundant arguments
EttoreZ Mar 26, 2026
1872410
Update parser script to properly handle solver and tolerance options
EttoreZ Apr 2, 2026
2660a5a
Correct compile_fmu descriptions, fix error, tool argument, libraries
EttoreZ Apr 2, 2026
77e6458
Update travis file with new compile and remove wait times.
EttoreZ Apr 2, 2026
016fbe2
Added travis.yml to exclude lise of gitignore.
EttoreZ Apr 2, 2026
75b6806
Remove annotations
EttoreZ Apr 2, 2026
00644ab
Update IDEAS library version
EttoreZ Apr 2, 2026
f375551
Update bestest_hydronic_heat_pump IDEAS version annotation and revision
EttoreZ Apr 2, 2026
28c2d94
Add occ.txt to Resources folder single_zone_commercial_hydronic
EttoreZ Apr 2, 2026
8316311
Address comments two_zone_apartment update
EttoreZ Apr 2, 2026
76a9801
Correct text in annotation two_zone_apartment_hydronic
EttoreZ Apr 2, 2026
879348b
Add change in Buildings version in revision annotation testcase 1 and 2
EttoreZ Apr 2, 2026
9e7bc32
Various cleaning
dhblum Apr 3, 2026
db11519
Update multizone_simple_office_hydronic to compile and simulate with …
EttoreZ Apr 3, 2026
5f0824b
Update IDEAS library version to use tag v4.0.0
EttoreZ Apr 3, 2026
8f3e8c6
Update git ignore occ path [ci skip]
EttoreZ Apr 3, 2026
3a6373b
Merge branch 'master' into issue422_om_msl4
dhblum Apr 8, 2026
1c8c3c6
Update releasenotes and add test case specific releasenotes
dhblum Apr 10, 2026
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
3 changes: 2 additions & 1 deletion .gitignore
Original file line number Diff line number Diff line change
@@ -1,7 +1,8 @@
*.pyc
*.txt
!version.txt
!testcases/singlezone_commercial_hydronic/models/OU44Emulator/occ.txt
!testcases/singlezone_commercial_hydronic/models/OU44Emulator/Resources/occ.txt
!.travis.yml
*.mat
*.log
*.err
Expand Down
40 changes: 20 additions & 20 deletions .travis.yml
Original file line number Diff line number Diff line change
Expand Up @@ -26,67 +26,67 @@ jobs:
script: cd testing && make test_autogen_client ARG=--overwrite
- python: 3.9
install: pip install --upgrade pip && pip install pandas==1.2.5 numpy==1.20.2 requests==2.25.1
script: cd testing && make build_jm_image && make test_parser
script: cd testing && make build_compiler_image && make test_parser
- python: 3.9
install: pip install --upgrade pip && pip install pandas==1.2.5 numpy==1.20.2 requests==2.25.1
script: cd testing && make build_jm_image && make test_data
script: cd testing && make build_compiler_image && make test_data
- python: 3.9
install: pip install --upgrade pip && pip install pandas==1.2.5 numpy==1.20.2 requests==2.25.1
script: cd testing && make build_jm_image && make test_forecast
script: cd testing && make test_forecast
- python: 3.9
install: pip install --upgrade pip && pip install pandas==1.2.5 numpy==1.20.2 requests==2.25.1
script: cd testing && make build_jm_image && make test_kpis
script: cd testing && make test_kpis
- python: 3.9
install: pip install --upgrade pip && pip install pandas==1.2.5 numpy==1.20.2 requests==2.25.1 rdflib==6.3.2 bacpypes==0.18.7
script: cd testing && make build_jm_image && make test_bacnet
script: cd testing && make test_bacnet
- python: 3.9
install: pip install --upgrade pip && pip install pandas==1.2.5 numpy==1.20.2 requests==2.25.1
script: cd testing && make build_jm_image && make test_testcase
script: cd testing && make test_testcase
- python: 3.9
install: pip install --upgrade pip && pip install pandas==1.2.5 numpy==1.20.2 requests==2.25.1
script: cd testing && make build_jm_image && make test_testcase1
script: cd testing && make build_compiler_image && make test_testcase1
- python: 3.9
install: pip install --upgrade pip && pip install pandas==1.2.5 numpy==1.20.2 requests==2.25.1
script: cd testing && make build_jm_image && make test_testcase2
script: cd testing && make test_testcase2
Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@EttoreZ Does testcase2 fmu compilation work with openmodelica? If not, then _no_compile is needed here. Otherwise, build_compiler_image is needed here.

- python: 3.9
install: pip install --upgrade pip && pip install pandas==1.2.5 numpy==1.20.2 requests==2.25.1
script: cd testing && make build_jm_image && make test_testcase3
script: cd testing && make test_testcase3_no_compile
- python: 3.9
install: pip install --upgrade pip && pip install pandas==1.2.5 numpy==1.20.2 requests==2.25.1
script: cd testing && make build_jm_image && make test_bestest_air
script: cd testing && make test_bestest_air_no_compile
- python: 3.9
install: pip install --upgrade pip && pip install pandas==1.2.5 numpy==1.20.2 requests==2.25.1
script: cd testing && make build_jm_image && make test_bestest_hydronic
script: cd testing && make test_bestest_hydronic_no_compile
- python: 3.9
install: pip install --upgrade pip && pip install pandas==1.2.5 numpy==1.20.2 requests==2.25.1
script: cd testing && make build_jm_image && make test_bestest_hydronic_heat_pump
script: cd testing && make test_bestest_hydronic_heat_pump_no_compile
- python: 3.9
install: pip install --upgrade pip && pip install pandas==1.2.5 numpy==1.20.2 requests==2.25.1
script: cd testing && make build_jm_image && make test_singlezone_commercial_hydronic
script: cd testing && make test_singlezone_commercial_hydronic_no_compile
- python: 3.9
install: pip install --upgrade pip && pip install pandas==1.2.5 numpy==1.20.2 requests==2.25.1
script: cd testing && make build_jm_image && make test_twozone_apartment_hydronic
script: cd testing && make test_twozone_apartment_hydronic_no_compile
- python: 3.9
install: pip install --upgrade pip && pip install pandas==1.2.5 numpy==1.20.2 requests==2.25.1
script: cd testing && travis_wait 90 make test_multizone_office_simple_hydronic_no_compile
- python: 3.9
install: pip install --upgrade pip && pip install pandas==1.2.5 numpy==1.20.2 requests==2.25.1
script: cd testing && make build_jm_image && travis_wait 90 make test_multizone_office_simple_air ARG="-s test_peak_heat_day,test_typical_heat_day"
script: cd testing && travis_wait 90 make test_multizone_office_simple_air_no_compile ARG="-s test_peak_heat_day,test_typical_heat_day"
- python: 3.9
install: pip install --upgrade pip && pip install pandas==1.2.5 numpy==1.20.2 requests==2.25.1
script: cd testing && make build_jm_image && travis_wait 90 make test_multizone_office_simple_air ARG="-s test_peak_cool_day,test_typical_cool_day,test_mix_day"
script: cd testing && travis_wait 90 make test_multizone_office_simple_air_no_compile ARG="-s test_peak_cool_day,test_typical_cool_day,test_mix_day"
- python: 3.9
install: pip install --upgrade pip && pip install pandas==1.2.5 numpy==1.20.2 requests==2.25.1
script: cd testing && make build_jm_image && travis_wait 90 make test_multizone_office_simple_air ARG="-s API"
script: cd testing && travis_wait 90 make test_multizone_office_simple_air_no_compile ARG="-s API"
- python: 3.9
install: pip install --upgrade pip && pip install pandas==1.2.5 numpy==1.20.2 requests==2.25.1
script: cd testing && make build_jm_image && travis_wait 90 make test_multizone_residential_hydronic ARG="-s test_peak_heat_day,test_shoulder"
script: cd testing && travis_wait 90 make test_multizone_residential_hydronic_no_compile ARG="-s test_peak_heat_day,test_shoulder"
- python: 3.9
install: pip install --upgrade pip && pip install pandas==1.2.5 numpy==1.20.2 requests==2.25.1
script: cd testing && make build_jm_image && travis_wait 90 make test_multizone_residential_hydronic ARG="-s test_typical_heat_day,test_summer"
script: cd testing && travis_wait 90 make test_multizone_residential_hydronic_no_compile ARG="-s test_typical_heat_day,test_summer"
- python: 3.9
install: pip install --upgrade pip && pip install pandas==1.2.5 numpy==1.20.2 requests==2.25.1
script: cd testing && make build_jm_image && travis_wait 90 make test_multizone_residential_hydronic ARG="-s API"
script: cd testing && travis_wait 90 make test_multizone_residential_hydronic_no_compile ARG="-s API"
- python: 3.9
install: pip install --upgrade pip && pip install pandas==1.2.5 numpy==1.20.2 requests==2.25.1
script: cd testing && travis_wait 90 make test_multizone_office_complex_air_no_compile ARG="-s test_peak_heat_day,test_typical_heat_day"
Expand Down
107 changes: 65 additions & 42 deletions data/data_generator.py
Original file line number Diff line number Diff line change
Expand Up @@ -10,14 +10,39 @@

'''

from pymodelica import compile_fmu
from pyfmi import load_fmu
from OMPython import OMCSessionZMQ
from scipy import interpolate
import pandas as pd
import numpy as np
import os
import platform
import json
import glob

def clean_simulation_files(model_name):
"""Remove all files generated by OpenModelica simulation"""

# Common file patterns generated by OpenModelica
patterns = [
f"{model_name}*", # All model-related files
"*.c", "*.o", "*.h", # C files
"*.makefile", "*.libs", # Build files
"*.log", "*.xml", "*.json", # Log and config files
"*_res.mat", "*_res.csv", # Result files
"*_init.xml", "*_info.json", # Initialization files
"*.fmu", "*.fmutmp" # FMU files
]

removed_files = []
for pattern in patterns:
for filepath in glob.glob(pattern):
try:
os.remove(filepath)
removed_files.append(filepath)
except Exception as e:
print(f"Could not remove {filepath}: {e}")

return removed_files

class Data_Generator(object):
'''
Expand Down Expand Up @@ -156,59 +181,57 @@ def generate_weather(self,
model_file = os.path.join(model_file,f)
model_file = model_file+'.mo'

# Edit the class to load the weather_file_name before compilation
str_old = 'filNam=""'
str_new = 'filNam=Modelica.Utilities.Files.loadResource("{0}")'\
.format(self.weather_file_name)
with open(model_file) as f:
newText=f.read().replace(str_old, str_new)

with open(model_file, "w") as f:
f.write(newText)

# Change to Resources directory
currdir = os.curdir
os.chdir(self.weather_dir)
# Compile the ReaderTMY3 from IBPSA using JModelica
fmu_path = compile_fmu(model_class, model_library)

# Revert changes in directory and model file
os.chdir(currdir)

with open(model_file) as f:
newText=f.read().replace(str_new, str_old)

with open(model_file, "w") as f:
f.write(newText)

# Load FMU
model = load_fmu(fmu_path)

# Set number of communication points
options = model.simulate_options()
options['ncp']=len(self.time)-1

# Simulate
res = model.simulate(start_time=self.time[0],
final_time=self.time[-1],
options=options)

# Create example model to run
model_code = """model WeatherData
IBPSA.BoundaryConditions.WeatherData.ReaderTMY3 weaDat(filNam=filNam,pAtmSou=IBPSA.BoundaryConditions.Types.DataSource.File);
parameter String filNam=Modelica.Utilities.Files.loadResource("{0}") "Name of weather data file";
end WeatherData;
""".format(self.weather_file_name)

omc = OMCSessionZMQ()
omc.sendExpression('loadFile("{0}")'.format(os.path.join(model_library,'package.mo')))
omc.sendExpression(model_code)
omc.sendExpression('setCommandLineOptions("-d=evaluateAllParameters")')
# Simulate the ReaderTMY3 from IBPSA using OMPython and OpenModelica
res_mat = omc.sendExpression('simulate(WeatherData, method="dassl", tolerance=1e-06, \
startTime = {0}, stopTime = {1}, numberOfIntervals={2})'\
.format(self.time[0],self.time[-1],len(self.time)-1))
res = omc.sendExpression('simulate(WeatherData, method="dassl", tolerance=1e-06, \
startTime = {0}, stopTime = {1}, numberOfIntervals={2}, \
outputFormat="csv")'.format(self.time[0],self.time[-1],len(self.time)-1))

# Get model outputs
df_weather = pd.read_csv(res['resultFile'])
# Add Constant variablesParameters
missing_vars = ['weaDat.weaBus.lat','weaDat.weaBus.lon']

for var in missing_vars:
# Read variable values
values = omc.sendExpression('val({}, 0:0, "{}")'.format(var,res_mat['resultFile']))
df_weather[var] = values[0] if values else None


output_names = []
for key in res.keys():
for key in df_weather.keys():
if 'weaBus.' in key:
output_names.append(key)

# Write every output in the data
for out in output_names:
# Interpolate to avoid problems with events from Modelica
g = interpolate.interp1d(res['time'],res[out],kind='linear')
df.loc[:,out.replace('weaBus.', '')] = g(self.time)
g = interpolate.interp1d(df_weather['time'],df_weather[out],kind='linear')
df.loc[:,out.replace('weaDat.weaBus.', '')] = g(self.time)

# Store in csv
self.store_df(df,'weather')

return df

# Exit session and clean folder
clean_simulation_files('WeatherData')
omc.sendExpression('quit()')
# Revert directory
os.chdir('..')

def generate_prices(self,
start_day_time = '08:00:00',
Expand Down
3 changes: 3 additions & 0 deletions data/find_days.py
Original file line number Diff line number Diff line change
Expand Up @@ -113,6 +113,9 @@ def find_days(heat, cool, data='simulate', plot=False, cooling_negative=False,
subprocess.call(cmd_docker_container)
cmd_docker_cp = 'docker cp wrapped.fmu find_days:/boptest/wrapped.fmu'.split()
subprocess.call(cmd_docker_cp)
print('Copying forecast into container...')
Comment thread
dhblum marked this conversation as resolved.
cmd_docker_cp = 'docker cp ../../../forecast find_days:/boptest/forecast'.split()
subprocess.call(cmd_docker_cp)
print('Running simulation ...')
# Run simulation for target 'length'
cmd_docker ='docker exec -t find_days /bin/bash -c '.split()
Expand Down
18 changes: 14 additions & 4 deletions parsing/SimpleRC.mo
Original file line number Diff line number Diff line change
Expand Up @@ -10,7 +10,7 @@ model SimpleRC
Modelica.Thermal.HeatTransfer.Sources.PrescribedTemperature preTOut
annotation (Placement(transformation(extent={{-40,10},{-20,30}})));
Modelica.Blocks.Sources.Sine souTOut(
freqHz=1/(3600*24),
f=1/(3600*24),
offset=273.15 + 20,
amplitude=10)
annotation (Placement(transformation(extent={{-100,10},{-80,30}})));
Expand Down Expand Up @@ -68,7 +68,7 @@ equation
color={0,0,127}));
connect(preHeat.port, cap.port)
annotation (Line(points={{40,-20},{40,20}}, color={191,0,0}));
connect(senTZone.T, con.u_m) annotation (Line(points={{70,20},{80,20},{80,-40},
connect(senTZone.T, con.u_m) annotation (Line(points={{71,20},{80,20},{80,-40},
{-30,-40},{-30,-32}}, color={0,0,127}));
connect(set.y, oveSet.u)
annotation (Line(points={{-79,-20},{-72,-20}}, color={0,0,127}));
Expand All @@ -81,8 +81,18 @@ equation
connect(oveAct.y, eff.u) annotation (Line(points={{11,-20},{14,-20},{14,-80},
{18,-80}}, color={0,0,127}));
connect(senTZone.T, TZone.u)
annotation (Line(points={{70,20},{98,20}}, color={0,0,127}));
annotation (Line(points={{71,20},{98,20}}, color={0,0,127}));
connect(eff.y, PHeat.u) annotation (Line(points={{41,-80},{98,-80}},
color={0,0,127}));
annotation (uses(Modelica(version="3.2.2"), IBPSA(version="3.0.0")));
annotation (uses(Modelica(version="4.0.0"), IBPSA(version="4.0.0")),
Documentation(revisions="<html>
<ul>
<li>
October 24, 2025, by Ettore Zanetti:<br/>
Updated model to use Modelica 4.0 and Buildings 12.1.0.
This is for <a href=https://github.com/ibpsa/project1-boptest/issues/422>
BOPTEST issue #422</a>.
</li>
</ul>
</html>"));
end SimpleRC;
16 changes: 13 additions & 3 deletions parsing/SimpleRC_NoSignalExchangeBlocks.mo
Original file line number Diff line number Diff line change
Expand Up @@ -10,7 +10,7 @@ model SimpleRC_NoSignalExchangeBlocks
Modelica.Thermal.HeatTransfer.Sources.PrescribedTemperature preTOut
annotation (Placement(transformation(extent={{-40,10},{-20,30}})));
Modelica.Blocks.Sources.Sine souTOut(
freqHz=1/(3600*24),
f=1/(3600*24),
offset=273.15 + 20,
amplitude=10)
annotation (Placement(transformation(extent={{-100,10},{-80,30}})));
Expand Down Expand Up @@ -43,13 +43,23 @@ equation
color={0,0,127}));
connect(preHeat.port, cap.port)
annotation (Line(points={{40,-20},{40,20}}, color={191,0,0}));
connect(senTZone.T, con.u_m) annotation (Line(points={{70,20},{80,20},{80,-40},
connect(senTZone.T, con.u_m) annotation (Line(points={{71,20},{80,20},{80,-40},
{-30,-40},{-30,-32}}, color={0,0,127}));
connect(set.y, con.u_s)
annotation (Line(points={{-79,-20},{-42,-20}}, color={0,0,127}));
connect(con.y, preHeat.Q_flow)
annotation (Line(points={{-19,-20},{20,-20}}, color={0,0,127}));
connect(con.y, eff.u) annotation (Line(points={{-19,-20},{14,-20},{14,-80},{
18,-80}}, color={0,0,127}));
annotation (uses(Modelica(version="3.2.2"), IBPSA(version="3.0.0")));
annotation (uses(Modelica(version="4.0.0"), IBPSA(version="4.0.0")),
Documentation(revisions="<html>
<ul>
<li>
October 24, 2025, by Ettore Zanetti:<br/>
Updated model to use Modelica 4.0 and Buildings 12.1.0.
This is for <a href=https://github.com/ibpsa/project1-boptest/issues/422>
BOPTEST issue #422</a>.
</li>
</ul>
</html>"));
end SimpleRC_NoSignalExchangeBlocks;
18 changes: 14 additions & 4 deletions parsing/SimpleRC_OnlyReadSignalExchangeBlocks.mo
Original file line number Diff line number Diff line change
Expand Up @@ -10,7 +10,7 @@ model SimpleRC_OnlyReadSignalExchangeBlocks
Modelica.Thermal.HeatTransfer.Sources.PrescribedTemperature preTOut
annotation (Placement(transformation(extent={{-40,10},{-20,30}})));
Modelica.Blocks.Sources.Sine souTOut(
freqHz=1/(3600*24),
f=1/(3600*24),
offset=273.15 + 20,
amplitude=10)
annotation (Placement(transformation(extent={{-100,10},{-80,30}})));
Expand Down Expand Up @@ -57,7 +57,7 @@ equation
color={0,0,127}));
connect(preHeat.port, cap.port)
annotation (Line(points={{40,-20},{40,20}}, color={191,0,0}));
connect(senTZone.T, con.u_m) annotation (Line(points={{70,20},{80,20},{80,-40},
connect(senTZone.T, con.u_m) annotation (Line(points={{71,20},{80,20},{80,-40},
{-30,-40},{-30,-32}}, color={0,0,127}));
connect(set.y, con.u_s)
annotation (Line(points={{-79,-20},{-42,-20}}, color={0,0,127}));
Expand All @@ -66,8 +66,18 @@ equation
connect(con.y, eff.u) annotation (Line(points={{-19,-20},{14,-20},{14,-80},{
18,-80}}, color={0,0,127}));
connect(senTZone.T,TZone. u)
annotation (Line(points={{70,20},{98,20}}, color={0,0,127}));
annotation (Line(points={{71,20},{98,20}}, color={0,0,127}));
connect(eff.y,PHeat. u) annotation (Line(points={{41,-80},{98,-80}},
color={0,0,127}));
annotation (uses(Modelica(version="3.2.2"), IBPSA(version="3.0.0")));
annotation (uses(Modelica(version="4.0.0"), IBPSA(version="4.0.0")),
Documentation(revisions="<html>
<ul>
<li>
October 24, 2025, by Ettore Zanetti:<br/>
Updated model to use Modelica 4.0 and Buildings 12.1.0.
This is for <a href=https://github.com/ibpsa/project1-boptest/issues/422>
BOPTEST issue #422</a>.
</li>
</ul>
</html>"));
end SimpleRC_OnlyReadSignalExchangeBlocks;
Loading
Loading