diff --git a/specification/source/cdl.rst b/specification/source/cdl.rst index 46d3bebf..a2ca9b79 100644 --- a/specification/source/cdl.rst +++ b/specification/source/cdl.rst @@ -436,11 +436,12 @@ to implement composite blocks (:numref:`sec_com_blo`). http://simulationresearch.lbl.gov/modelica/releases/latest/help/Buildings_Controls_OBC_CDL.html. * Download https://github.com/lbl-srg/modelica-buildings/archive/master.zip, unzip the file, and open ``Buildings/package.mo`` in the graphical model editor of - `Dymola `_ or - `OpenModelica `_. + `OpenModelica `_, + `Impact `_, or + `Dymola `_. All models in the `Examples` and `Validation` packages can be simulated with these tools, as well as with `OPTIMICA `_ and - with `JModelica `_. + with `JModelica `_. An actual implementation of an elementary building block looks as follows, where we omitted the annotations that are diff --git a/specification/source/codeGeneration.rst b/specification/source/codeGeneration.rst index 89c92c5d..e0fb23dd 100644 --- a/specification/source/codeGeneration.rst +++ b/specification/source/codeGeneration.rst @@ -167,7 +167,7 @@ corresponding JSON Schema. A JSON Schema describes the data format and file stru lists the required or optional properties, and sets limitations on values such as patterns for strings or extrema for numbers. -The raw CDL Schema can be found at `https://raw.githubusercontent.com/lbl-srg/modelica-json/master/schema-CDL.json `_ . +The CDL Schema can be found at `https://raw.githubusercontent.com/lbl-srg/modelica-json/master/schema-CDL.json `_ . The program `modelica-json `_ automatically tests the JSON representation parsed from a CDL file against the schema right after it is @@ -208,9 +208,9 @@ To implement control sequences, blocks from the CDL library (:numref:`sec_ele_bui_blo`) can be used to compose sequences that conform to the CDL language specification described in :numref:`sec_cdl`. For verification tests, any Modelica block can be used. -Next, to export the Modelica model, a Modelica tool such as JModelica, OpenModelica +Next, to export the Modelica model, a Modelica tool such as OpenModelica, JModelica, OPTIMICA or Dymola can be used. -For example, with JModelica a control sequence can be exported using the Python commands +For example, with OPTIMICA a control sequence can be exported using the Python commands .. code-block:: python @@ -234,13 +234,14 @@ Finally, to import the FMU-ME in a runtime environment, various tools can be use * Tools based on C: - * FMI Library (http://www.jmodelica.org/FMILibrary) + * FMI Library (https://github.com/modelon-community/fmi-library) * Modelica tools, of which many if not all provide functionality for real-time simulation: - * JModelica (http://www.jmodelica.org) * OpenModelica (https://openmodelica.org/) + * JModelica (https://www.jmodelica.org) + * Impact (https://www.modelon.com/modelon-impact/) * Dymola (https://www.3ds.com/products-services/catia/products/dymola/) * MapleSim (https://www.maplesoft.com/products/maplesim/) * SimulationX (https://www.simulationx.com/) diff --git a/specification/source/conf.py b/specification/source/conf.py index 0909bac3..278d48bc 100644 --- a/specification/source/conf.py +++ b/specification/source/conf.py @@ -491,14 +491,16 @@ \renewcommand{\chaptermark}[1]{\markboth{#1}{}} \renewcommand{\sectionmark}[1]{\markright{\thesection\ #1}} \fancyhf{} -\fancyhead[LE,RO]{\thepage} -\fancyhead[RE]{\leftmark} -\fancyhead[LO]{\rightmark} +% \fancyhead[LE,RO]{\thepage} +% \fancyhead[RE]{\leftmark} +% \fancyhead[LO]{\rightmark} \fancypagestyle{plain}{% \fancyhead{} % get rid of headers + \fancyhead[L]{OpenBuildingControl} \fancyhead[R]{\leftmark} - \fancyfoot[R]{\thepage} \fancyfoot[L]{} + \fancyfoot[C]{\thepage} + \fancyfoot[R]{} \renewcommand{\headrulewidth}{0.5pt} % and the line } diff --git a/specification/source/controlsLibrary.rst b/specification/source/controlsLibrary.rst index 6c9c7d27..9270c243 100644 --- a/specification/source/controlsLibrary.rst +++ b/specification/source/controlsLibrary.rst @@ -93,7 +93,7 @@ are fed back to the controller to form the closed loop test. The model is available in the Modelica Buildings Library as the model ``Buildings.Air.Systems.SingleZone.VAV.Examples.Guideline36``. -As of Spring 2020, additional sequences are being implemented +As of Fall 2020, additional sequences are being implemented for chilled water plants and for boiler plants, following the ASHRAE Research Project Report 1711, and for optimal start-up (for heating) and cool down (for cooling). diff --git a/specification/source/references.bib b/specification/source/references.bib index d1f6073c..4a45658c 100755 --- a/specification/source/references.bib +++ b/specification/source/references.bib @@ -3,7 +3,8 @@ @InProceedings{WetterBenneGautierEtAl2020, author = "Michael Wetter and Kyle Benne and Antoine Gautier and Thierry S. Nouidui and Agnes Ramle and Amir Roth and Hubertus Tummescheit and Stuart Mentzer and Christian Winther", title = "Lifting the Garage Door on Spawn, an Open-Source BEM-Controls Engine", - booktitle = "Proc. of Building Performance Modeling Conference and SimBuild (accepted for publication)", + booktitle = "Proc. of Building Performance Modeling Conference and SimBuild", + pages = "518--525", address = "Chicago, IL, USA", year = "2020" } @@ -11,8 +12,11 @@ @InProceedings{WetterBenneGautierEtAl2020 @InProceedings{ZhangBlumEtAl2020, author = "Kun Zhang and David H. Blum and Milica Grahovac and Jianjun Hu and Jessica Granderson and Michael Wetter", title = "Development and Verification of Control Sequences for Single-Zone Variable Air Volume System Based on ASHRAE Guideline 36", - booktitle = "2nd American Modelica Conference (accepted for publication)", + booktitle = "2nd American Modelica Conference", address = "Boulder, CO, USA", + pages = "81--90", + doi = {10.3384/ecp2016981}, + url = {https://doi.org/10.3384/ecp2016981}, year = "2020" } diff --git a/specification/source/softwareArchitecture.rst b/specification/source/softwareArchitecture.rst index 08dbff3a..c41adfe9 100644 --- a/specification/source/softwareArchitecture.rst +++ b/specification/source/softwareArchitecture.rst @@ -84,17 +84,17 @@ Controls Design Tool mod_jso_par <-> mod_lib - package JModelica { + package OPTIMICA { } OpenStudio -d-> edi : invokes - OpenStudio -d-> JModelica : invokes + OpenStudio -d-> OPTIMICA : invokes - JModelica -u-> mod_lib: loads + OPTIMICA -u-> mod_lib: loads interface FMUs - JModelica -d-> FMUs : generates + OPTIMICA -d-> FMUs : generates package "Buildings Operating System" as BOS { database "I/O drivers" as dri2 @@ -128,7 +128,7 @@ The `HVAC/controls tool` updates the json reprensentation of the model, and these changes will be merged into the Modelica model or Modelica package that has been edited. For exporting the sequence for simulation or for operation, `OpenStudio` -invokes `JModelica` which generates an FMU of the sequence, or multiple FMUs +invokes `OPTIMICA` which generates an FMU of the sequence, or multiple FMUs if the sequence is to be distributed to different field devices. The `Building Operating System` then imports these FMUs. @@ -174,7 +174,7 @@ Functional Verification Tool [Viewer] } [CDL Parser] - [JModelica] + [OPTIMICA] database "Modelica\nControl\nModel" as mod_ctl [FMU-ME] [Reports] <> @@ -183,10 +183,10 @@ Functional Verification Tool vt -d-> [CDL Parser]: uses [I/O\nConfiguration] -d-> mod_ctl : updates point list [Engine] -> [FMU-ME] : inserts point list - [Engine] -d-> [JModelica] : invokes FMU-ME export - [JModelica] -d-> mod_ctl: imports + [Engine] -d-> [OPTIMICA] : invokes FMU-ME export + [OPTIMICA] -d-> mod_ctl: imports [Engine] -l-> [HIL Module]: connects - [JModelica] -> [FMU-ME] : exports + [OPTIMICA] -> [FMU-ME] : exports [Engine] -d-> [Reports]: writes [Viewer] -> [Reports]: imports @@ -203,8 +203,8 @@ The `I/O Configuration` module will allow users (such as a commissioning agent) to update the point list. This is needed as not all point mappings may be known during the design phase. -The `Engine` invokes `JModelica` to export an FMU-ME of the control -blocks. As `JModelica` does not parse CDL information +The `Engine` invokes `OPTIMICA` to export an FMU-ME of the control +blocks. As `OPTIMICA` does not parse CDL information that is stored in vendor annotations (such as the point mapping), the `Engine` will insert point lists into the ``Resources`` directory of the `FMU-ME`. @@ -220,4 +220,4 @@ that are displayed by the `Viewer`. .. [#parser] Using a parser that only requires Java has the advantage that it can be used in other applications that may not have - access to a JModelica installation. + access to a OPTIMICA installation.