blockTrimAndRespond

Block to inplement trim and respond logic

Information

This block implements the trim and respond logic according to ASHRAE guideline G36, PART 5.A.15 (trim and respond setpoint reset logic).

The trim and respond logic shall reset setpoint within the range minSet to maxSet. When the associated device is off (uDevSta=false), the setpoint shall be iniSet. The reset logic shall be active while the associated device is proven on (uDevSta=true), starting delTim after initial device start command. When active, every time step samplePeriod, trim the setpoint by triAmo. If there are more than numIgnReq requests, respond by changing the setpoint by resAmo*(numOfReq-numIgnReq), i.e., the number of requests minus the number of ignored requests, but no more than maxRes.

In other words, every time step samplePeriod:
  • Change setpoint by triAmo;
  • If numOfReq > numIgnReq, also change setpoint by resAmo*(numOfReq -numIgnReq) but no more than maxRes.

Image of set point reset

Parameters

TypeNameDefaultDescription
RealiniSetInitial setpoint
RealminSetMinimum setpoint
RealmaxSetMaximum setpoint
RealdelTimDelay time
RealsamplePeriodSample period of component
IntegernumIgnReqNumber of ignored requests
RealtriAmoTrim amount
RealresAmoRespond amount (must have opposite sign of triAmo)
RealmaxResMaximum response per time interval (must have same sign as resAmo)

Connectors

TypeNameDefaultDescription
Buildings.Controls.OBC.CDL.Interfaces.IntegerInputnumOfReqNumber of requests from zones/systems
Buildings.Controls.OBC.CDL.Interfaces.BooleanInputuDevStaOn/Off status of the associated device
Buildings.Controls.OBC.CDL.Interfaces.RealOutputySetpoint that have been reset

Components

TypeNameDefaultDescription
Buildings.Controls.OBC.CDL.Logical.TrueDelaytimSend an on signal after some delay time
Buildings.Controls.OBC.CDL.Reals.GreaterThresholdgreThrCheck if the real requests is more than ignored requests setting
Buildings.Controls.OBC.CDL.Reals.SwitchnetResNet setpoint reset value
Buildings.Controls.OBC.CDL.Reals.Sources.ConstantresAmoConRespond amount constant
Buildings.Controls.OBC.CDL.Reals.MultiplyproProducts of net requests and respond amount value
Buildings.Controls.OBC.CDL.Reals.Multiplypro1Product of trim and respond amount
Buildings.Controls.OBC.CDL.Reals.Multiplypro2Product of respond and maximum amount
Buildings.Controls.OBC.CDL.Discrete.UnitDelayuniDelOutput the input signal with a unit delay
Buildings.Controls.OBC.CDL.Reals.SwitchswiSwitch between initial setpoint and reseted setpoint
Buildings.Controls.OBC.CDL.Reals.Switchswi1Before instant (device ON + delTim + samplePeriod), the setpoint should not be trimmed
Buildings.Controls.OBC.CDL.Reals.Switchswi2Reinitialize setpoint to initial setting when device become OFF
Buildings.Controls.OBC.CDL.Reals.Switchswi3Logical switch
Buildings.Controls.OBC.CDL.Discrete.SamplersamplerSample number of requests
Buildings.Controls.OBC.CDL.Reals.LessThresholdlesThr1Check if trim and response amount have same sign
Buildings.Controls.OBC.CDL.Reals.GreaterThresholdgreThr2Check if trim and response amount have opposite sign
Buildings.Controls.OBC.CDL.Reals.GreaterThresholdgreThr1Check if response amount have positive sign
Buildings.Controls.OBC.CDL.Reals.MultiplyByParametergaiConvert results back to negative

Revisions

  • April 13, 2020, by Jianjun Hu:
    Corrected to delay the true initial device status. This is for #1876.
  • August 28, 2019, by Jianjun Hu:
    Added assertions and corrected implementation when response amount is negative. This is for #1503.
  • July 10, 2017, by Jianjun Hu:
    First implementation.