blockStageAvailability
Compute stage availability
Information
A stage is deemed available if both the following are true:
- Each equipment required to run at that stage without lead/lag alternate is available.
- The number of equipment required to run at that stage – with or without lead/lag alternate – and available is greater or equal to the number of equipment required to run at that stage.
Otherwise, the stage is deemed unavailable.
Parameters
| Type | Name | Default | Description |
|---|---|---|---|
| Real[:,:] | staEqu | Staging matrix – Equipment required for each stage | |
| Integer | nSta | size(staEqu, 1) | Number of stages |
| Integer | nEqu | size(staEqu, 2) | Number of equipment |
Connectors
| Type | Name | Default | Description |
|---|---|---|---|
| Buildings.Controls.OBC.CDL.Interfaces.BooleanInput[nEqu] | u1Ava | Equipment available signal | |
| Buildings.Controls.OBC.CDL.Interfaces.BooleanOutput[nSta] | y1 | Stage available signal |
Components
| Type | Name | Default | Description |
|---|---|---|---|
| Buildings.Controls.OBC.CDL.Reals.Sources.Constant[nSta,nEqu] | matStaEqu | Staging matrix | |
| Buildings.Controls.OBC.CDL.Reals.GreaterThreshold[nSta,nEqu] | isReq | Return true if equipment required without lead/lag alternate | |
| Buildings.Controls.OBC.CDL.Reals.GreaterThreshold[nSta,nEqu] | isReqPosAlt | Return true if equipment required (with or without lead/lag alternate) | |
| Buildings.Controls.OBC.CDL.Reals.LessThreshold[nSta,nEqu] | isNotReqNoAlt | Return true if equipment not required or required with lead/lag alternate | |
| Buildings.Controls.OBC.CDL.Routing.BooleanVectorReplicator | booVecRep | Replicate equipment available signal | |
| Buildings.Controls.OBC.CDL.Logical.And[nSta,nEqu] | isReqAva | Return true if equipment required without lead/lag alternate and available | |
| Buildings.Controls.OBC.CDL.Logical.And[nSta,nEqu] | isReqAltAva | Return true if equipment required (with or without lead/lag alternate) and available | |
| Buildings.Controls.OBC.CDL.Logical.Or[nSta,nEqu] | isReqAvaOrNotReq | Return true if equipment required without lead/lag alternate and available, or if not required | |
| Buildings.Controls.OBC.CDL.Logical.MultiAnd[nSta] | all | Return true if previous block condition valid for all elements | |
| Buildings.Controls.OBC.CDL.Logical.And[nSta] | isAva | Return true if stage available | |
| Buildings.Controls.OBC.CDL.Reals.MultiSum[nSta] | nEquSta | Return the number of equipment required at each stage | |
| Buildings.Controls.OBC.CDL.Conversions.BooleanToInteger[nSta,nEqu] | booToInt | Convert to integer | |
| Buildings.Controls.OBC.CDL.Integers.GreaterEqual[nSta] | isReqAltAvaGreReq | Return true if number of required available equipment higher than number of required equipment | |
| Buildings.Controls.OBC.CDL.Integers.MultiSum[nSta] | nReqAltAva | Number of equipment required (with or without lead/lag alternate) and available | |
| Buildings.Controls.OBC.CDL.Conversions.RealToInteger[nSta] | nEquStaInt | Integer cast of number of equipment required at each stage |
Revisions
-
March 29, 2024, by Antoine Gautier:
First implementation.