The Totalization (Boolean Runtime) logic block provides tracking of the total time that a Boolean input resides in a state. An example use is to record the total time a value is True or False.
- Math Overflow—The Present Value, Accumulator, Rollover Amount, or Rollover Count exceed the maximum value that can be expressed by a single floating-point number. At Math Overflow, the Present Value keeps its previous value and stops updating.
- Round Off Error—The Present Value is implemented as a single floating-point number; it has 7 digits' precision. Round Off Error may occur due to the limitation in precision.
- Input Unreliable—If the input used in the calculation is unreliable, the block stops totalization.
The following table describes the inputs and outputs of the Totalization (Boolean Runtime) logic block.
Name |
Data Type |
Exposed for Connection by Default |
Description |
Default Value |
---|---|---|---|---|
Inputs |
||||
Active |
Boolean |
No |
Prevents or allows the updating of Present Value. |
True |
Input |
Boolean |
Yes |
Indicates the Input value that the block uses to provide totalization. |
False |
Reference State |
Boolean |
No |
Updates the Present Value periodically as long as the input stays in the Reference State. |
False |
Reset |
Boolean |
Yes |
Resets the Present Value, Accumulator, Rollover Count, and Rollover Amount to zero. |
False |
Scale Factor |
Float |
No |
Provides unit conversion. |
1 |
Outputs |
||||
Accumulator |
Float |
No |
Accumulates the remainders in the calculation of the Present Value due to the precision limit of a single floating-point number. The sum of the Present Value and the Accumulator provides a double floating-point expression of the current totalized value for the block. |
0.0 |
Error Since Last Reset |
Boolean |
No |
Indicates any errors that occurred since the time of the last reset. Since the last reset, if the block’s Reliability is any value other than Reliable, this output is set to True. If the Reset input changes from False to True or a Reset command is issued, this output is set to False. |
False |
Present Value 1 |
Float |
Yes |
Indicates the current value of the block. The sum of the Present Value and the Accumulator provides a double floating-point expression of the current totalized value for the block. |
0.0 |
Rollover Amount |
Float |
No |
Increments this value by the current value of Present Value. |
0.0 |
Rollover Count |
Float |
No |
Indicates the value by which the Present Value is incremented. |
0.0 |
Properties |
||||
Interval |
Float |
N/A |
Indicates the execution period of this block. |
20 Seconds |
Rollover Limit |
Float |
N/A |
Sets a value that automatically rolls over the Present Value when the Present Value exceeds the value (that is, the block adds the Present Value to the Rollover Amount, adds 1 to the Rollover Count, and sets the Present Value and Accumulator to 0). |
10,000 |
Rollover Mode |
Enum |
N/A |
Indicates the method to automatically roll over the Present Value (that is, the block adds the Present Value to the Rollover Amount, adds 1 to the Rollover Count, and sets the Present Value and Accumulator to 0). The rollover method is based on value (Rollover Limit) or set to No Rollover. When the Rollover Mode changes, the Rollover Count and Rollover Amount change to zero. |
No Rollover |
Setup |
Enum |
N/A |
Indicates the type of totalization block. |
Time in State |