-
Notifications
You must be signed in to change notification settings - Fork 180
Issue2180 boiler plant main controller oct 2021 #2700
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
Open
mwetter
wants to merge
1,677
commits into
master
Choose a base branch
from
issue2180_BoilerPlant_MainController_oct_2021
base: master
Could not load branches
Branch not found: {{ refName }}
Loading
Could not load tags
Nothing to show
Loading
Are you sure you want to change the base?
Some commits from the old base branch may be removed from the timeline,
and old review comments may become outdated.
Open
Changes from 250 commits
Commits
Show all changes
1677 commits
Select commit
Hold shift + click to select a range
e904fb4
validated generic sequences [ci skip]
JayHuLBL eb0c5d2
validating head pressure control sequences [ci skip]
JayHuLBL e511a6b
validated head pressure control sequences [ci skip]
JayHuLBL 7f4fc5d
validated minimum flow bypass control [ci skip]
JayHuLBL 5945a72
validating pumps control sequences [ci skip]
JayHuLBL 1603bdb
Added validation model placeholders for primary and secondary loop co…
karthikeyad-pnnl 6b7b7ab
Merge branch 'master' into issue2293_chiller_plant_seq
JayHuLBL 9e69a1d
Added new control module for enabling lag primary loop in hybrid plant
karthikeyad-pnnl 81079bc
Merge branch 'master' into issue2293_chiller_plant_seq
JayHuLBL 3a73ba1
updated reference
JayHuLBL 983f129
solved issues when modeling with optimica
JayHuLBL bce2665
corrected html error, deleted test code
JayHuLBL 050ef48
updating documentation for the closed loop model [ci skip]
JayHuLBL d50075a
updated closed loop documentation
JayHuLBL c378b68
added release note, updated the exclusion list
JayHuLBL 35860a4
corrected html error
JayHuLBL 592994a
updated schematic
JayHuLBL a35f0b3
updating validation models for the chilled water pump staging control
JayHuLBL ebf4c10
improving the validation model documentation
JayHuLBL 707e874
updating validation model document
JayHuLBL b514f0d
Added script for primary controller validation
karthikeyad-pnnl 1faa1a7
merged master [ci skip]
JayHuLBL a5f3e44
updated cdl classname
JayHuLBL 7a32971
improved condenser water pump valiation modeli documentations
JayHuLBL 621f61a
Merge branch 'master' into issue2293_chiller_plant_seq
JayHuLBL 50314c0
updating condenser water pump speed validation
JayHuLBL 0d4a998
updating the setpoint validation model documentation
JayHuLBL 16179bb
Merge branch 'master' into issue2293_chiller_plant_seq
JayHuLBL fc07da8
Merge branch 'master' into issue2293_chiller_plant_seq
JayHuLBL b9eb2bd
Merge branch 'master' into issue2293_chiller_plant_seq
JayHuLBL d2a9494
adding validation documentation to the staging process sequences [ci …
JayHuLBL ed5f183
updated reference, corrected checking of the reset minimum flow setpo…
JayHuLBL d20cb75
updated staging process sequences validation [ci skip]
JayHuLBL 37cd783
Merge branch 'master' of github.com:lbl-srg/modelica-buildings into l…
karthikeyad-pnnl 05a2fde
Merge branch 'lbl-srg-master' into issue2180_Boilet push origin
karthikeyad-pnnl f4bb430
Updated package order files
karthikeyad-pnnl c161a20
Updated CDL references after merging latest master
karthikeyad-pnnl 477c885
adding documentation to the staging process susequences validation [c…
JayHuLBL 872d587
updated validation models of sub sequences for the staging process [c…
JayHuLBL 409a6f3
Merge branch 'master' into issue2293_chiller_plant_seq
JayHuLBL c016362
updated down with on-off validation documentation [ci skip]
JayHuLBL a2c2cb8
adding validation document for the staging process models [ci skip]
JayHuLBL d774f50
added documentation for the validation models of staging sequences [c…
JayHuLBL 713ca47
adding documentation for the tower control sequences [ci skip]
JayHuLBL caeae92
adding documentation to the controller validaiton models [ci skip]
JayHuLBL 629b22d
Merge branch 'master' into issue2293_chiller_plant_seq
JayHuLBL 0edd3d2
updating controller validation documentation [ci skip]
JayHuLBL ab7d21c
Merge branch 'master' into issue2293_chiller_plant_seq
JayHuLBL ca4c52f
updating the reference [ci skip]
JayHuLBL bc58781
updated reference and the section numbers [ci skip]
JayHuLBL 9a87cb5
Merge branch 'master' into issue2293_chiller_plant_seq
JayHuLBL 221c0e1
adding the cooling tower controller validation cases [ci skip]
JayHuLBL 79056bc
added validation model for the tower controller [ci skip]
JayHuLBL a21960d
corrected reference in package.mo file [ci skip]
JayHuLBL 16e3b70
Merge branch 'master' into issue2293_chiller_plant_seq
JayHuLBL e43b0a4
updating controller documentation [ci skip]
JayHuLBL 66e6e9b
Merge branch 'master' into issue2293_chiller_plant_seq
JayHuLBL 694cca3
updated closed-loop diagram, changed staging setpoint reference, addi…
JayHuLBL 4468d18
Merge branch 'master' into issue2293_chiller_plant_seq
JayHuLBL 7e09830
added documentation
JayHuLBL 1c27c32
updated reference
JayHuLBL cd50762
added missing comments, deleted temp folder, reverted wrong changes […
JayHuLBL 35fa0b4
updated reference, avoid each warning
JayHuLBL 64157ac
fixed the wrong dynamic color, added comments
JayHuLBL 0930af3
updated conf
JayHuLBL da73737
changed class name
JayHuLBL fb7cf43
corrected package order
JayHuLBL e5386d1
added closedloop test to exclusion list
JayHuLBL bd4af8f
updated conf file
JayHuLBL 7bd018d
added missing comments
JayHuLBL a9d4c31
merged master
JayHuLBL 81f1791
updated opnemodelica script
JayHuLBL 1c62c10
merging master
JayHuLBL 17456fa
improved stage change setpoint sequence
JayHuLBL fb3a36b
changed package order
JayHuLBL 6240554
Merge branch 'master' into issue2293_chiller_plant_seq
JayHuLBL d13967f
deleted min setting [ci skip]
JayHuLBL 259d147
merged master
JayHuLBL 5fc1d5d
updated references
JayHuLBL 386da45
fixed oct compile errors [ci skip]
JayHuLBL de462b1
updated closed loop test results, deleted CDL changes
JayHuLBL 5a42418
updated reference
JayHuLBL 563949a
corrected hyperlinks
JayHuLBL 16413e1
fixed broken links
JayHuLBL 6681f3d
corrected the duplicate protected statement
JayHuLBL fd9c9bd
updated references with dymola 2025x
JayHuLBL 782ae15
Merge branch 'master' into issue2293_chiller_plant_seq
JayHuLBL f546531
updated reference results
JayHuLBL fb70bab
Merge branch 'master' into issue2293_chiller_plant_seq
JayHuLBL f5d30ab
addressing antoine's comments [ci skip]
JayHuLBL 9f9b562
renamed enumeration name [ci skip]
JayHuLBL f1e3de2
improved comments about the chiller type [ci skip]
JayHuLBL 07e5290
removing anyVsdCen [ci skip]
JayHuLBL 9048660
Merge branch 'master' into issue2293_chiller_plant_seq
JayHuLBL 0fa8d03
changed the chiller type to enumeration
JayHuLBL 4201564
created type converting to integer [ci skip]
JayHuLBL 712a5b3
propagated anyVsdCen [ci skip]
JayHuLBL 9b3762f
Removed unused parameters and interfaces from primary loop controller…
karthikeyad-pnnl 01bc9f3
Removed excess instances from primary controller validation model
karthikeyad-pnnl aa93b95
Removed unused interfaces from secondary controller
karthikeyad-pnnl 55b0d28
Merge branch 'master' into issue2293_chiller_plant_seq
JayHuLBL f266c0c
Added backup of original boiler plant model for closed loop demo
karthikeyad-pnnl 2545f33
added the release note to version 12 [ci skip]
JayHuLBL 0e04eeb
added missing connection for the max and min lift [ci skip]
JayHuLBL 3e07d1d
set the default number of pumps to be same as number of chillers
JayHuLBL a9db9f5
replaced the wet bulb temperature input by the relative humidity input
JayHuLBL abb6cf6
renamed the maximum plant chilled water supply temperature
JayHuLBL 5d69ab3
renamed parameters for chilled water pressure setpoints [ci skip]
JayHuLBL bbde740
removed default flow setpoint [ci skip]
JayHuLBL f6d8504
Merge branch 'master' into issue2293_chiller_plant_seq
JayHuLBL 690a75b
Added large office building loads
karthikeyad-pnnl b776287
Updated paths to Sine block in CDL
karthikeyad-pnnl e6f6786
Removed unused packages, blocks and scripts
karthikeyad-pnnl b893410
added start value for the parameters that could be disabled [ci skip]
JayHuLBL 45f38d4
Removed unused reference files for equipment rotation, hybrid plant c…
karthikeyad-pnnl d79b930
Removed unused classes related to secondary loop controller
karthikeyad-pnnl ca74ccd
Removed secondary controller model and renamed zonal load class to se…
karthikeyad-pnnl 51b3ade
Removed redundant boiler plant physics model
karthikeyad-pnnl 5b810cd
Renamed boiler plant physics model
karthikeyad-pnnl 093cd5d
Updated documentation for all controller classes
karthikeyad-pnnl 56b7166
Updated controllers to fix issues found in closed-loop demonstration
karthikeyad-pnnl ead181e
Updated closed loop demonstration models
karthikeyad-pnnl d78ce5f
Updated unit test results for closed loop demonstration
karthikeyad-pnnl 4b79562
Updated models to fix issues in unit tests
karthikeyad-pnnl 68d7bfe
Uploading latest unit test results
karthikeyad-pnnl 8b699b8
Merge branch 'master' into issue2293_chiller_plant_seq
JayHuLBL cdff3df
changed LIFT parameter name [ci skip]
JayHuLBL 3f8e798
changed displayUnit to unit [ci skip]
JayHuLBL dcd68c1
moved chiller plant sequence to G36 package
JayHuLBL b650ea1
added package description [ci skip]
JayHuLBL 72f2f7a
updated release note
JayHuLBL 028c93c
Removed unused files for equipment rotation
karthikeyad-pnnl 0ef33ef
Moved all boiler plant control moodules to new location in G36 package
karthikeyad-pnnl eadf06d
Merge branch 'issue2293_chiller_plant_seq' of github.com:lbl-srg/mode…
karthikeyad-pnnl 8ea64c1
Merge branch 'lbl-srg-issue2293_chiller_plant_seq' into issue2180_Boi…
karthikeyad-pnnl 9a44746
Updated package structure for examplers package
karthikeyad-pnnl 2c427b2
Updated models to address comments on #2700
karthikeyad-pnnl 7233b21
Merge pull request #4176 from karthikeyad-pnnl/issue2180_BoilerPlant_…
AntoineGautier 2dc1657
Fixed translation issues in example model
karthikeyad-pnnl 34245a7
Backing up files with partial fix for isolation valve control
karthikeyad-pnnl f25f82a
Changed boiler types defintion to use enumeration
karthikeyad-pnnl f6df9db
Applied functional fixes for staging process
karthikeyad-pnnl 01d8d97
Fixed validation models for all impacted control modules
karthikeyad-pnnl 618d5e0
Fixed translation issues in controller validation and exampe model
karthikeyad-pnnl 3a5e3f6
Merge pull request #4188 from karthikeyad-pnnl/issue2180_BoilerPlant_…
AntoineGautier b354568
Reverted boiler types definition to Integer constants from enumeratio…
karthikeyad-pnnl 8788427
Fixed translation issues in example model
karthikeyad-pnnl a24f5f6
Merge pull request #4192 from karthikeyad-pnnl/issue2180_BoilerPlant_…
AntoineGautier 3244420
Model fixes for staging process issues, and functioning example model
karthikeyad-pnnl e612f6f
Changed isolation valve parameters to resolve convergence issues
karthikeyad-pnnl d73797c
Merge pull request #4195 from karthikeyad-pnnl/issue2180_BoilerPlant_…
AntoineGautier db706c9
Updated Boolean parameter in minimum flowrate setpoint calculation in…
karthikeyad-pnnl 39d4d9e
Added contextual comments to blocks and updated formatting
karthikeyad-pnnl e1a34d7
Added enable condition to condensation control parameter
karthikeyad-pnnl c39e219
Merge pull request #4208 from karthikeyad-pnnl/issue2180_BoilerPlant_…
AntoineGautier dae85a9
Added assert messages for invalid combinations of plant configuration…
karthikeyad-pnnl bd6eb27
Added reference results for new boiler plant primary controller
karthikeyad-pnnl 13b1628
Updated modules to resolve errors found during unit tests
karthikeyad-pnnl 316b175
Updated staging down sequence to resolve errors in unit test
karthikeyad-pnnl f8eb214
Updated unit test results after all updates for boiler plant template…
karthikeyad-pnnl bbfe437
Changed derived parameters to final
karthikeyad-pnnl fd1c7ad
Updated all comments and instance names related to plant and reset re…
karthikeyad-pnnl c697e81
Updated unit information. Removed duplicate parameters. Updated Boole…
karthikeyad-pnnl 50aa83d
Removed redundant Boolean edge detectors
karthikeyad-pnnl 81f56a0
Changed temperature setpoint reset parameter defaults. Updated parame…
karthikeyad-pnnl 08d4ed7
Updated code per comments on #2700
karthikeyad-pnnl 83e0c6d
Renamed boiler status input on pump controller. Moved pump curves to …
karthikeyad-pnnl eca779f
Refactored hot water supply temp reset to use new implementation of T&R
karthikeyad-pnnl e3d46f3
Fixed conditional enable that results in compilation issues
karthikeyad-pnnl 4634b9e
Updated Boolean conditionals for volume flowrate measurement across m…
karthikeyad-pnnl 830a0d5
Fixed illegal parameter modifications in secondary pump controller va…
karthikeyad-pnnl 9d76563
Updated interface name for staging setpoint change detection module
karthikeyad-pnnl 2891217
Updated logic and validation model for block to identify boilers to b…
karthikeyad-pnnl 5746058
Updated variable names in validation scripts
karthikeyad-pnnl ec6ccbe
Changed diff pressure setpoint interfaces to use array
karthikeyad-pnnl 6296f2a
Updated temp difference parameters to correct instance name format
karthikeyad-pnnl b7b7d91
Updated blocks and modules to address comments on #2700
karthikeyad-pnnl 847178b
Fixed errors found in unit test
karthikeyad-pnnl eee912a
Fixed validation scripts to resolve unit test errors
karthikeyad-pnnl 930b46c
Updated unit test results
karthikeyad-pnnl 3280049
Updated models and validation script for closed loop example
karthikeyad-pnnl 25d98b3
Fixed variable name
karthikeyad-pnnl 2fca328
Updated unit test script and reference results
karthikeyad-pnnl 8c8f70f
Updated simulation settings in model to match validation script
karthikeyad-pnnl 08ecbe8
Updated code formatting of closed loop validation plant
karthikeyad-pnnl 0a51ac1
Fixed errors found in unit tests
karthikeyad-pnnl e2b4519
Updated interfaces and documentation for secondary pump controller an…
karthikeyad-pnnl ab30322
Updated enable condition for condensing boiler design setpoint
karthikeyad-pnnl 1211d0e
Removed interface for boiler availability from main controller
karthikeyad-pnnl 63c69bd
Updated documentation on bloick for shutting isolation valves during …
karthikeyad-pnnl 045e873
Added block to calculate weighted average of boiler supply temperature
karthikeyad-pnnl b4bba78
Updated modules to accommodate changes in interface names for weighte…
karthikeyad-pnnl 81e9754
Updated remote and local differential pressure setpoint parameters
karthikeyad-pnnl b884e1b
Updated default values to use correct conversion of Fahrenheit
karthikeyad-pnnl e9def85
Fixed formatting and graphical layer
karthikeyad-pnnl 55e88ea
Propagated changes to boiler design flowrate parameter to all classes…
karthikeyad-pnnl efacf23
Updated parameter definitions for secondary loop flow sensor
karthikeyad-pnnl 035af8d
Refactored types classes
karthikeyad-pnnl fb49716
Refactored all type assignments
karthikeyad-pnnl a69259d
Moved parameter from protected section. Updated parameter assignment …
karthikeyad-pnnl e173ce3
Updated enable condition calculation for secondary flow sensor input
karthikeyad-pnnl abfb240
Fixed incorrect definitions for secondary pump speed control type
karthikeyad-pnnl 248b1d0
Fixed unit test errors
karthikeyad-pnnl ca0bbea
Updated validation script to remove redundant plots
karthikeyad-pnnl 8e2118a
Updated unit test results
karthikeyad-pnnl 4cfcca4
Fixed validation script for Example model
karthikeyad-pnnl 6f292d5
Updated unit test results
karthikeyad-pnnl 6b09b3e
Updated calculations for plant and reset requests from secondary loop…
karthikeyad-pnnl 39129dc
Merge branch 'issue2180_BoilerPlant_Nov23' of github.com:karthikeyad-…
karthikeyad-pnnl 5dc6a46
Updated validation script and reference results
karthikeyad-pnnl ac694fe
Merge remote-tracking branch 'upstream/master' into issue2180_BoilerP…
karthikeyad-pnnl d114350
merged master
JayHuLBL 77acc45
fixed html error and the deleted not needed texts
JayHuLBL 1e77862
fixed wrong experimental setup
JayHuLBL 9f9d666
updating reference and the openmodelica scripts [ci skip]
JayHuLBL 7e67940
Updated system sizing parameters to resolve short cycling. Changed th…
karthikeyad-pnnl d57db7f
Updated module for primary pump speed control using flowrate
karthikeyad-pnnl f8dbe8b
Upadted reference results
karthikeyad-pnnl 01f76fc
Changed logic for secondary pump speed control to use min speed when …
karthikeyad-pnnl 8d9f259
Updated baseclasses for closed loop example
karthikeyad-pnnl 3838178
Updated closed-loop example model
karthikeyad-pnnl 2df5901
Updated reference results
karthikeyad-pnnl 657f63e
Changed start time for validation script
karthikeyad-pnnl 1a27d6a
Updated sizing parameters, defaults and documentation
karthikeyad-pnnl 3f2bd45
Updated reference results
karthikeyad-pnnl e492a78
Updated icon layer. Removed redundant parameter assignments. Updated …
karthikeyad-pnnl 564839c
Updated control module blocks to resolve comments about enable parame…
karthikeyad-pnnl 7a5c561
Fixed issues with unit tests
karthikeyad-pnnl f4223dc
Updated reference results
karthikeyad-pnnl 91c578b
Updated documentation to include information about validation plots.
karthikeyad-pnnl 054a652
Updated documentation
karthikeyad-pnnl 5168f07
Updated load components in secondary loop baseclass
karthikeyad-pnnl c29e045
Removed final keyword from changeable parameters. Fixed incorrect con…
karthikeyad-pnnl accc432
Updated reference results for unit tests
karthikeyad-pnnl bc0235c
Merge remote-tracking branch 'upstream/issue2180_BoilerPlant_MainCont…
karthikeyad-pnnl 6c4a8cb
Updated documentation to reflect updated load model
karthikeyad-pnnl a136b32
Changed inconsistent time value in validation plot
karthikeyad-pnnl a96a94b
Updated unit test reference result
karthikeyad-pnnl b9d1996
Merge branch 'issue2180_BoilerPlant_Nov23' of github.com:karthikeyad-…
karthikeyad-pnnl d350d8e
Renamed closed-loop validation model
karthikeyad-pnnl 8004d52
Updated plot positions in validation script
karthikeyad-pnnl 5d4f21a
Merge pull request #4319 from karthikeyad-pnnl/issue2180_BoilerPlant_…
AntoineGautier c36750e
Merge branch 'master' of github.com:lbl-srg/modelica-buildings into i…
AntoineGautier 48792f9
Update load model, use heating load from data file
AntoineGautier d7d2dbe
Update results
AntoineGautier c4ce81c
Updated HTML formatting in documentation
karthikeyad-pnnl 02236e6
Uncommented protect statement
karthikeyad-pnnl 9f4199d
Merge remote-tracking branch 'upstream/issue2180_BoilerPlant_MainCont…
karthikeyad-pnnl e798544
Updated documentation formatting. Added missing revision tracker to d…
karthikeyad-pnnl 8063f2e
Merge pull request #4473 from karthikeyad-pnnl/issue2180_BoilerPlant_…
AntoineGautier File filter
Filter by extension
Conversations
Failed to load comments.
Loading
Jump to
The table of contents is too big for display.
Diff view
Diff view
There are no files selected for viewing
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
194 changes: 194 additions & 0 deletions
194
Buildings/Controls/OBC/ASHRAE/G36/Plants/Boilers/BypassValve/BypassValvePosition.mo
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,194 @@ | ||
| within Buildings.Controls.OBC.ASHRAE.G36.Plants.Boilers.BypassValve; | ||
| block BypassValvePosition | ||
| "Sequence for controlling minimum flow bypass valve position" | ||
|
|
||
| parameter Integer nPum = 2 | ||
| "Number of pumps"; | ||
|
|
||
| parameter Buildings.Controls.OBC.CDL.Types.SimpleController controllerType= Buildings.Controls.OBC.CDL.Types.SimpleController.PI | ||
| "Type of controller"; | ||
|
|
||
| parameter Real k( | ||
| final min=0, | ||
| final unit="1", | ||
| displayUnit="1") = 1 | ||
| "Gain of controller"; | ||
|
|
||
| parameter Real Ti( | ||
| final min=0, | ||
| final unit="s", | ||
| displayUnit="s", | ||
| final quantity="time") = 0.5 | ||
| "Time constant of integrator block"; | ||
|
|
||
| parameter Real Td( | ||
| final min=0, | ||
| final unit="s", | ||
| displayUnit="s", | ||
| final quantity="time") = 0.1 | ||
| "Time constant of derivative block"; | ||
|
|
||
| Buildings.Controls.OBC.CDL.Interfaces.BooleanInput uPumSta[nPum] | ||
| "Input signals indicating pump statuses" | ||
| annotation (Placement(transformation(extent={{-140,-20},{-100,20}}), | ||
| iconTransformation(extent={{-140,-40},{-100,0}}))); | ||
|
|
||
| Buildings.Controls.OBC.CDL.Interfaces.RealInput VHotWat_flow( | ||
| final unit="m3/s", | ||
| displayUnit="m3/s", | ||
| final quantity="VolumeFlowRate") | ||
| "Measured hot-water flow-rate through primary circuit" | ||
| annotation (Placement(transformation(extent={{-140,20},{-100,60}}), | ||
| iconTransformation(extent={{-140,0},{-100,40}}))); | ||
|
|
||
| Buildings.Controls.OBC.CDL.Interfaces.RealInput VHotWatMinSet_flow( | ||
| final unit="m3/s", | ||
| displayUnit="m3/s", | ||
| final quantity="VolumeFlowRate") | ||
| "Calculated hot water minimum flow setpoint through boilers" | ||
| annotation (Placement(transformation(extent={{-140,60},{-100,100}}), | ||
| iconTransformation(extent={{-140,40},{-100,80}}))); | ||
|
|
||
| Buildings.Controls.OBC.CDL.Interfaces.RealInput uMinBypValPos( | ||
| final unit="1", | ||
| displayUnit="1", | ||
| final min=0) | ||
| "Minimum bypass valve position for condensation control in non-condensing boilers" | ||
| annotation (Placement(transformation(extent={{-140,-80},{-100,-40}}), | ||
| iconTransformation(extent={{-140,-80},{-100,-40}}))); | ||
|
|
||
| Buildings.Controls.OBC.CDL.Interfaces.RealOutput yBypValPos( | ||
| final unit="1", | ||
| displayUnit="1", | ||
| final min=0) | ||
| "Bypass valve opening position" | ||
| annotation (Placement(transformation(extent={{100,-50},{140,-10}}), | ||
| iconTransformation(extent={{100,-20},{140,20}}))); | ||
|
|
||
| protected | ||
| Buildings.Controls.OBC.CDL.Reals.Subtract sub2 | ||
| "Difference between measured flowrate and minimum flow setpoint" | ||
| annotation (Placement(transformation(extent={{-70,30},{-50,50}}))); | ||
|
|
||
| Buildings.Controls.OBC.CDL.Logical.MultiOr mulOr( | ||
| final nin=nPum) | ||
| "Block to detect if any of the pumps are proved ON" | ||
| annotation (Placement(transformation(extent={{-70,-10},{-50,10}}))); | ||
|
|
||
| Buildings.Controls.OBC.CDL.Reals.Divide div | ||
| "Normalize measured hot water flowrate" | ||
| annotation (Placement(transformation(extent={{-20,30},{0,50}}))); | ||
|
|
||
| Buildings.Controls.OBC.CDL.Reals.Sources.Constant con( | ||
| final k=0) | ||
| "Constant Real source" | ||
| annotation (Placement(transformation(extent={{-20,60},{0,80}}))); | ||
|
|
||
| Buildings.Controls.OBC.CDL.Reals.Max max | ||
| "Ensure bypass valve position is greater than lower limit for condensation control" | ||
| annotation (Placement(transformation(extent={{70,-40},{90,-20}}))); | ||
|
|
||
| Buildings.Controls.OBC.CDL.Reals.AddParameter addPar( | ||
| final p=1e-6) | ||
| "Prevent division by zero" | ||
| annotation (Placement(transformation(extent={{-70,70},{-50,90}}))); | ||
|
|
||
| Buildings.Controls.OBC.CDL.Reals.PIDWithReset conPID( | ||
| final controllerType=controllerType, | ||
| final k=k, | ||
| final Ti=Ti, | ||
| final Td=Td, | ||
| final yMax=1, | ||
| final yMin=0, | ||
| xi_start=1, | ||
| reverseActing=false) | ||
| "PID loop to regulate flow through primary loop using bypass valve" | ||
| annotation (Placement(transformation(extent={{20,60},{40,80}}))); | ||
|
|
||
| Buildings.Controls.OBC.CDL.Logical.Edge edg | ||
| "Reset PID loop when it is activated" | ||
| annotation (Placement(transformation(extent={{-20,-10},{0,10}}))); | ||
|
|
||
| equation | ||
|
|
||
| connect(mulOr.u[1:nPum], uPumSta) annotation (Line(points={{-72,0},{-120,0}}, | ||
| color={255,0,255})); | ||
|
|
||
| connect(uMinBypValPos, max.u2) annotation (Line(points={{-120,-60},{50,-60},{50, | ||
| -36},{68,-36}}, color={0,0,127})); | ||
| connect(max.y, yBypValPos) | ||
| annotation (Line(points={{92,-30},{120,-30}}, color={0,0,127})); | ||
| connect(VHotWatMinSet_flow, addPar.u) | ||
| annotation (Line(points={{-120,80},{-72,80}}, color={0,0,127})); | ||
| connect(addPar.y, div.u2) annotation (Line(points={{-48,80},{-40,80},{-40,34}, | ||
| {-22,34}}, color={0,0,127})); | ||
| connect(con.y, conPID.u_s) | ||
| annotation (Line(points={{2,70},{18,70}}, color={0,0,127})); | ||
| connect(div.y, conPID.u_m) | ||
| annotation (Line(points={{2,40},{30,40},{30,58}}, color={0,0,127})); | ||
| connect(mulOr.y, edg.u) annotation (Line(points={{-48,0},{-22,0}}, | ||
| color={255,0,255})); | ||
| connect(edg.y, conPID.trigger) | ||
| annotation (Line(points={{2,0},{24,0},{24,58}}, color={255,0,255})); | ||
|
|
||
| connect(conPID.y, max.u1) annotation (Line(points={{42,70},{50,70},{50,-24},{68, | ||
| -24}}, color={0,0,127})); | ||
| connect(sub2.y, div.u1) annotation (Line(points={{-48,40},{-28,40},{-28,46},{-22, | ||
| 46}}, color={0,0,127})); | ||
| connect(VHotWatMinSet_flow,sub2. u1) annotation (Line(points={{-120,80},{-80,80}, | ||
| {-80,46},{-72,46}}, color={0,0,127})); | ||
| connect(VHotWat_flow,sub2. u2) annotation (Line(points={{-120,40},{-80,40},{-80, | ||
| 34},{-72,34}}, color={0,0,127})); | ||
| annotation (defaultComponentName="bypValPos", | ||
| Icon(coordinateSystem(preserveAspectRatio=false, extent={{-100,-100},{100,100}}), | ||
| graphics={Rectangle( | ||
| extent={{-100,100},{100,-100}}, | ||
| lineColor={28,108,200}, | ||
| fillColor={255,255,255}, | ||
| fillPattern=FillPattern.Solid), | ||
| Text( | ||
| extent={{-70,20},{70,-20}}, | ||
| textColor={0,0,0}, | ||
| fillColor={255,255,255}, | ||
| fillPattern=FillPattern.None, | ||
| textString="bypValPos"), | ||
| Text( | ||
| extent={{-100,146},{100,108}}, | ||
| textColor={0,0,255}, | ||
| textString="%name")}), | ||
| Diagram(coordinateSystem(preserveAspectRatio=false, extent={{-100,-100},{100,100}})), | ||
| Documentation(info="<html> | ||
| <p> | ||
| Control sequence for bypass circuit valve position <code>yBypValPos</code> | ||
| for boiler plant loop. | ||
| </p> | ||
| <ul> | ||
| <li> | ||
| The bypass valve is enabled when any of the hot-water supply pumps are proven on | ||
| <code>uPumSta = true</code>, and disabled otherwise. | ||
| </li> | ||
| <li> | ||
| When enabled, a PID control loop modulates the bypass valve to maintain | ||
| a primary circuit flow rate of <code>VHotWatMinSet_flow</code>, calculated in class | ||
| <a href=\"modelica://Buildings.Controls.OBC.ASHRAE.G36.Plants.Boilers.SetPoints.MinimumFlowSetpoint\"> | ||
| Buildings.Controls.OBC.ASHRAE.G36.Plants.Boilers.SetPoints.MinimumFlowSetpoint</a>. | ||
| </li> | ||
| <li> | ||
| When all the pumps are not proved on <code>uPumSta = false</code>, the valve | ||
| is fully opened. | ||
| </li> | ||
| <li> | ||
| When a non-condensing boiler is enabled, the bypass valve position is set to the | ||
| higher value between the signal generated by the PID loop, and the minimum valve | ||
| position for condensation control <code>uMinBypValPos</code>. | ||
| </li> | ||
| </ul> | ||
| </html>", revisions="<html> | ||
| <ul> | ||
| <li> | ||
| August 17, 2020, by Karthik Devaprasad:<br/> | ||
| First implementation. | ||
| </li> | ||
| </ul> | ||
| </html>")); | ||
| end BypassValvePosition; |
105 changes: 105 additions & 0 deletions
105
...ings/Controls/OBC/ASHRAE/G36/Plants/Boilers/BypassValve/Validation/BypassValvePosition.mo
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,105 @@ | ||
| within Buildings.Controls.OBC.ASHRAE.G36.Plants.Boilers.BypassValve.Validation; | ||
| block BypassValvePosition | ||
|
|
||
| Buildings.Controls.OBC.ASHRAE.G36.Plants.Boilers.BypassValve.BypassValvePosition | ||
| bypValPos( | ||
| final nPum=2, | ||
| final k=1, | ||
| final Ti=10, | ||
| final Td=10e-6) | ||
| "Test instance for bypass valve controller" | ||
| annotation (Placement(transformation(extent={{10,-10},{30,10}}))); | ||
|
|
||
| protected | ||
| Buildings.Controls.OBC.CDL.Reals.Sources.Constant con( | ||
| final k=1.2) | ||
| "Minimum flow setpoint" | ||
| annotation (Placement(transformation(extent={{-40,50},{-20,70}}))); | ||
|
|
||
| Buildings.Controls.OBC.CDL.Reals.Sources.Sin sin( | ||
| final amplitude=0.5, | ||
| final freqHz=1/75, | ||
| final phase=0, | ||
| final offset=1.2, | ||
| final startTime=1) | ||
| "Sine input" | ||
| annotation (Placement(transformation(extent={{-80,10},{-60,30}}))); | ||
|
|
||
| Buildings.Controls.OBC.CDL.Logical.Sources.Pulse booPul( | ||
| final width=0.5, | ||
| final period=300) | ||
| "Boolean pulse generator" | ||
| annotation (Placement(transformation(extent={{-80,-30},{-60,-10}}))); | ||
|
|
||
| Buildings.Controls.OBC.CDL.Reals.Sources.Constant con1( | ||
| final k=0.2) | ||
| "Minimum valve position for condensation control" | ||
| annotation (Placement(transformation(extent={{-40,-70},{-20,-50}}))); | ||
|
|
||
| Buildings.Controls.OBC.CDL.Routing.BooleanScalarReplicator booRep( | ||
| final nout=2) | ||
| "Boolean replicator" | ||
| annotation (Placement(transformation(extent={{-40,-30},{-20,-10}}))); | ||
|
|
||
| Buildings.Controls.OBC.CDL.Reals.Sources.Constant con2( | ||
| final k=0) | ||
| "Constant zero signal" | ||
| annotation (Placement(transformation(extent={{-80,50},{-60,70}}))); | ||
|
|
||
| Buildings.Controls.OBC.CDL.Reals.Switch swi | ||
| "Pass zero flowrate when pumps are switched off" | ||
| annotation (Placement(transformation(extent={{-40,10},{-20,30}}))); | ||
|
|
||
| equation | ||
| connect(con.y, bypValPos.VHotWatMinSet_flow) annotation (Line(points={{-18,60}, | ||
| {0,60},{0,6},{8,6}}, color={0,0,127})); | ||
| connect(con1.y, bypValPos.uMinBypValPos) annotation (Line(points={{-18,-60},{0, | ||
| -60},{0,-6},{8,-6}}, color={0,0,127})); | ||
| connect(booPul.y, booRep.u) | ||
| annotation (Line(points={{-58,-20},{-42,-20}}, color={255,0,255})); | ||
| connect(booRep.y, bypValPos.uPumSta) annotation (Line(points={{-18,-20},{-10,-20}, | ||
| {-10,-2},{8,-2}}, color={255,0,255})); | ||
|
|
||
| connect(swi.y, bypValPos.VHotWat_flow) annotation (Line(points={{-18,20},{-10, | ||
| 20},{-10,2},{8,2}}, color={0,0,127})); | ||
| connect(sin.y, swi.u1) annotation (Line(points={{-58,20},{-50,20},{-50,28},{-42, | ||
| 28}}, color={0,0,127})); | ||
| connect(con2.y, swi.u3) annotation (Line(points={{-58,60},{-54,60},{-54,12},{-42, | ||
| 12}}, color={0,0,127})); | ||
| connect(booPul.y, swi.u2) annotation (Line(points={{-58,-20},{-46,-20},{-46,20}, | ||
| {-42,20}}, color={255,0,255})); | ||
| annotation ( | ||
| Documentation(info="<html> | ||
| <p> | ||
| This example validates | ||
| <a href=\"modelica://Buildings.Controls.OBC.ASHRAE.G36.Plants.Boilers.BypassValve.BypassValvePosition\"> | ||
| Buildings.Controls.OBC.ASHRAE.G36.Plants.Boilers.BypassValve.BypassValvePosition</a>. | ||
| </p> | ||
| </html>", revisions="<html> | ||
| <ul> | ||
| <li> | ||
| August 17, 2020, by Karthik Devaprasad:<br/> | ||
| First implementation. | ||
| </li> | ||
| </ul> | ||
| </html>"), | ||
| Icon(coordinateSystem(preserveAspectRatio=false), graphics={ | ||
| Ellipse(lineColor = {75,138,73}, | ||
| fillColor={255,255,255}, | ||
| fillPattern = FillPattern.Solid, | ||
| extent={{-100,-100},{100,100}}), | ||
| Polygon(lineColor = {0,0,255}, | ||
| fillColor = {75,138,73}, | ||
| pattern = LinePattern.None, | ||
| fillPattern = FillPattern.Solid, | ||
| points={{-36,60},{64,0},{-36,-60},{-36,60}})}), Diagram( | ||
| coordinateSystem(preserveAspectRatio=false)), | ||
| __Dymola_Commands(file= | ||
| "./Resources/Scripts/Dymola/Controls/OBC/ASHRAE/G36/Plants/Boilers/BypassValve/Validation/BypassValvePosition.mos" | ||
| "Simulate and plot"), | ||
| experiment( | ||
| StartTime=0, | ||
| StopTime=300, | ||
| Interval=1, | ||
| Tolerance=1e-06)); | ||
| end BypassValvePosition; |
32 changes: 32 additions & 0 deletions
32
Buildings/Controls/OBC/ASHRAE/G36/Plants/Boilers/BypassValve/Validation/package.mo
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,32 @@ | ||
| within Buildings.Controls.OBC.ASHRAE.G36.Plants.Boilers.BypassValve; | ||
| package Validation "Validation models for BypassValve sequences" | ||
|
|
||
|
|
||
|
|
||
|
|
||
| annotation (Icon(graphics={ | ||
| Rectangle( | ||
| lineColor={200,200,200}, | ||
| fillColor={248,248,248}, | ||
| fillPattern=FillPattern.HorizontalCylinder, | ||
| extent={{-100,-100},{100,100}}, | ||
| radius=25.0), | ||
| Rectangle( | ||
| lineColor={128,128,128}, | ||
| extent={{-100,-100},{100,100}}, | ||
| radius=25.0), | ||
| Polygon( | ||
| origin={8,14}, | ||
| lineColor={78,138,73}, | ||
| fillColor={78,138,73}, | ||
| pattern=LinePattern.None, | ||
| fillPattern=FillPattern.Solid, | ||
| points={{-58.0,46.0},{42.0,-14.0},{-58.0,-74.0},{-58.0,46.0}})}), | ||
| Documentation(info="<html> | ||
| <p> | ||
| This package contains validation models for the classes in | ||
| <a href=\"modelica://Buildings.Controls.OBC.ASHRAE.G36.Plants.Boilers.BypassValve\"> | ||
| Buildings.Controls.OBC.ASHRAE.G36.Plants.Boilers.BypassValve</a>. | ||
| </p> | ||
| </html>")); | ||
| end Validation; |
1 change: 1 addition & 0 deletions
1
Buildings/Controls/OBC/ASHRAE/G36/Plants/Boilers/BypassValve/Validation/package.order
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1 @@ | ||
| BypassValvePosition |
Oops, something went wrong.
Oops, something went wrong.
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Why is this file modified?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Reverted to original master branch commit in latest PR