Appendix E Falcon Lead Lag
E-63
FORCE LEAD ROTATION TIME: HH:MM OR NONE
If this parameter is a non-zero time, then it is used to force the rotation of the lead boiler if it stays on longer than the
time specified.
Sequencer Add Boiler Selection
The sequencer selects the next boiler to be added according to a sorted order. This description assumes this is
implemented by assigning an ordering number and that the lowest numbers are the first to be added.
• Any Available slaves that have a mode of Use First will have the lowest ordering numbers. If two or more Use
First boilers exist, they are numbered according to their assigned Slave sequence order or Modbus address if
this value is zero, as descibed above.
•
Next are slaves that have the mode of Equalize Runtime. When the add boiler routine gets to this group it first
invokes the Voluntary Lead Rotation routine (to make sure this is done, but only once) and then selects an
Available boiler, if any, ordered according to:
— The first is the lead boiler per the LeadBoilerSeqNum parameter.
— The rest are the other slaves ordered according to the LL –Lag selection method} parameter:
• If this parameter is "Rotate in sequence order", then they are ordered according to their LL – Slave sequence
order or Modbus address if this value is zero, as descibed above.
• If this parameter is "Measured run time" then they are ordered according to their reported run time. If two have
the same measured run time, then either may be selected.
• Last are any Available slaves that have a mode of Use Last. These will have the highest numbers. If two or more
Use Last boilers exist, they are numbered according to their assigned Slave sequence order or Modbus
address if this value is zero, as described above.
Voluntary Lead Rotation
The current lead boiler is identified by the LeadBoilerSeqNum value. This value will change when the stager has
asked the sequencer for a boiler to add and either:
• the boiler identified by LeadBoilerSeqNum is neither Available nor Firing (i.e. it has a fault or is OnLeave), or
•the LeadBoilerRunTime value exceeds Lead rotation time.
In either of these cases, the algorithm performed is:
If the Lead selection method is "Rotate in sequence order", then LeadBoilerSeqNum is incremented, and then
new lead boiler is the one that is a slave in Equalize Runtime mode that is responding to the LL master (i.e. not
OnLeave or Recovering, but it might be Firing), and:
— has a sequence number equal to LeadBoilerSeqNum, or.
— If no boiler has this then the closest one with a sequence number greater than this number is used, or
— If no boiler has a greater sequence number, then the one that has the smallest sequence number is used
(wrap around).
Otherwise when the Lead selection method is "Measured run time", then the lead boiler is the one having the
lowest Measured run time value. If two have the same measured run time, then either may be selected.
The LeadBoilerRunTime value is then set to zero to give the new lead boiler a fresh allotment.
Note: if the old lead boiler is the only one, then this process may end up re-designating this as the "new" lead with a
fresh time allotment.
Sequencer ordering function
Part of the sequencer is called by the stager just before the stager runs, to give the sequencer a chance to assign
order numbers to stages that very recently turned on, and to maintain these in a sequence. It uses the Stagin-
gOrder item in the Slave Status table for this purpose.
The sequencer ordering function examines all slaves and sets to zero the StagingOrder of any stage that is not
Firing.
This ensures that any stage that has left the Firing condition recently is no longer in the number sequence.
Next, skipping all of those that have 0 values in StagingOrder it finds the lowest numbered StagingOrder and gives
it the value 1, the next receive 2, etc.
Thus if gaps have developed due to a slave dropping out these are filled in.
Finally, the ordering function continues on, giving the next numbers to and Firing stages which have a 0 Stagin-
gOrder values (i.e. they recently were added, or they recently returned from OnLeave).