Professional Documents
Culture Documents
User Manual
Website: www.EmersonProcess.com/flow
FST User Manual
FloBoss and ROCLINK are marks of one of the Emerson Process Management companies. The Emerson logo is a
trademark and service mark of Emerson Electric Co. All other marks are the property of their respective owners.
This product may be covered under pending patent applications.
© Fisher Controls International, LLC. 1991-2003. All rights reserved.
While this information is presented in good faith and believed to be accurate, Fisher Controls does not guarantee
satisfactory results from reliance upon such information. Nothing contained herein is to be construed as a warranty or
guarantee, express or implied, regarding the performance, merchantability, fitness or any other matter with respect to the
products, nor as a recommendation to use any product or process in conflict with any patent. Fisher Controls reserves the
right, without notice, to alter or improve the designs or specifications of the products described herein.
ii Rev 01/04
FST User Manual
TABLE OF CONTENTS
SECTION 1 – INTRODUCTION
ROCLINK 800
Maximum Maximum Byte Maximum Line
ROC or FloBoss
Number of FSTs Size per FST Length*
FloBoss 103 2 3000 300
FloBoss 407 4 8000** 300
ROC809 6 3000 500
ROCLINK for Windows
Maximum Maximum Byte Maximum Line
ROC or FloBoss
Number of FSTs Size per FST Length
FloBoss 407 4 8000** 300
FloBoss 500-Series 2 4000 300
ROC300-Series 4 8000** 300
* Maximum Line Length is a limit of the FST Editor.
** Total FST space in ROC300-series and FloBoss 407 units is 8000 bytes. Individual FST size is
not limited, but the sum of all FSTs cannot exceed 8000 bytes.
Each FST may consist of as many functions as can fit into the memory reserved for the FSTs.
Reserved memory is pre-determined by the ROC or FloBoss with a set amount of line lengths
allocated for each FST. The byte size of an FST displays in the Code Size field on the FST Registers
> Advanced tab.
Depending on the function, the Results Register (RR) and the Compare Flag (CF) may be loaded,
stored, tested, modified, or left unchanged.
Figure 1-1. ROCLINK for Windows FST Registers Figure 1-2. ROCLINK 800 FST Registers
(ROC809 Shown)
Figure 1-3. ROCLINK for Windows FST Figure 1-4. ROCLINK 800 FST Registers –
Registers – Advanced Advanced
7. The Timer #1 to #4 are countdown timers used to signal that a certain period or time has
elapsed. You set the time, and the time is then updated by the FST. These four timers, when
set greater than “0,” decrement by 1 every 100 msec. Branching can be performed based on
the timers reaching “0,” and use of the Check Timer (CT) function.
8. Set the Misc #1 to #4 unsigned 8-bit integers (with valid decimal values of 0 to 255) that are
used for global storage by the FST.
9. Set the Execution Delay between the executions of successive FST command steps. The
default is 0 seconds; the minimum delay you can specify is 0.1 seconds.
10. The Results Register (RR), or Signal Value Analog (SVA), is a special-purpose register that
stores the floating point result from the most current command executed. Normally, the value
is determined by the FST and would only be set by you in Trace mode.
11. The Compare Flag (CF), or Signal Value Discrete (SVD), is a special-purpose 8-bit register
that stores an integer representing the numbers 0 through 255. The Compare Flag is
manipulated by the logic functions. Normally, the value is determined by the FST and would
only be set by you in Trace mode.
12. The Mesg #1 and Mesg #2 is a 30-character field for storing a message that will display in the
FST Message area. Msg Data #1 and Msg Data #2 display any values associated with the
messages.
The Code Size Bytes is the number of bytes used by the FST. The Code Size is read-only device-
specific parameter. Refer to Table 1-1, Devices, Software, and FST Functionality, on page 1-1.
The Code Pointer Byte field is the display of the offset of the next function to be executed from the
beginning of its memory segment. Values are device specific. Refer to Table 1-1, Devices, Software,
and FST Functionality, on page 1-1. This value normally changes too rapidly, unless the FST is at a
Wait (WT) statement or in Trace mode. It is used for debugging purposes.
NOTE: Use FST Monitor within the FST Editor to monitor these operations.
Title Bar
FST Menu Bar
FST Button Bar
Function Structure
Header Line
Cell
Workspace
Output
(Compiled FST)
The FST Editor provides a Workspace, menus, and buttons for creating a Function Sequence Table.
Figure 2-1 shows the FST Editor Workspace display. The Title Bar, at the top of the Workspace
window, identifies the FST being created or edited. In Figure 2-1, the Title Bar shows “Function
Sequence Table 1 (50dd.fst): On Line.”
The Workspace area is divided into rows and columns with the intersection called a “Cell.” Cells are
denoted by a box containing the cursor and a dark black line around the cell. Use <Tab> and the
arrow keys to move between cells, or go directly to a cell by clicking it with the mouse.
Key Action
→ Move cursor to the right cell or character.
← Move cursor to the left cell or character.
↑ Move cursor to the cell above it.
↓ Move cursor to the cell below it.
Alt + 1 View Output.
Alt + Ctrl + C View Commands.
Alt + Ctrl + P View Parameters.
Alt + Ctrl + T View Tags.
Backspace Delete the previous character.
Ctrl + End Display last entry in Workspace.
Ctrl + Home Display beginning of Workspace.
Ctrl + Tab Return to the ROCLINK for Window On Line view.
Ctrl + W View Workspace.
Delete Delete character in front of the cursor position.
End Move cursor to ending cell of the row.
Enter Process saves contents of cell entry and moves to the next cell.
Esc Cancel entry and display original or prior contents of the cell.
F1 Help.
F5 Go to line number you enter.
F9 View Commands and Tags.
F10 View Commands and Parameters.
Home Move cursor to beginning cell of the row.
Page Down Display next page of Workspace.
Page Up Display previous page of Workspace.
Tab Move to the next cell.
Use FST > Print Step to print the Workspace contents and include the STEP numbers.
Use FST > Print IP to print the Workspace contents and includes Instruction Pointers (used
in Trace mode). The Instruction Pointer (IP) indicates the location in ROC or FloBoss
memory of the next function to be executed. An IP listing and printed copy can be used with
the Trace mode to assist in debugging and troubleshooting an FST.
Select Edit > Erase to erase the contents of the current Workspace.
Select Edit > Goto to go to the STEP specified. This is a quick way of moving from one
place to another and is especially useful in long FSTs.
Select Edit > Listing to list the FST number, Name, Size, Date, Time, Version Number, and
Operator ID of the FSTs contained in the ROC or FloBoss. The Listing option displays
information detailing each FST loaded in ROC memory. Refer to Figure 2-2.
2-6 ROCLINK for Windows FST Rev 01/04
FST User Manual
The FST program provides the STEP numbers (0-299 or 0-499) for each FST. You complete the
other fields in the structure to build a function.
NOTE: Do not skip any STEPs. The FST program treats a blank STEP as the END of a
program and will not compile correctly.
In the example above, the program is instructed to GO to the LABEL PMPOFF as established by
ARGUMENT 1 in STEP 0. STEP 0 jumps to STEP 1, where the LABEL PMPOFF is located.
LABELs not referenced by an Argument are discarded when the FST is downloaded to the device. Use
LABELs only to enhance readability. LABELs remain with the FST when it is saved to a disk file.
The cursor keys provide movement within the list and <Esc> removes the list from the Workspace. In the
pop-up (Figure 2-3), double-click on an item to choose it and place it in the active cell in the Workspace.
In the menu listing (Figure 2-4), double-click on an item to choose it and place it in the active cell in the
Workspace or drag and drop the item onto the active cell. Click the X to close the listing.
After pressing F9 to select the ARGUMENT Point Type and Point Number (@IOA1,Tag Name),
press F10 to select the corresponding Parameter (EU) that you desire to monitor, read, store, or alter
(write). In the previous example, @IOA1 is the Point Type, Point Number, and Tag Name, and EU is
the Parameter.
Table 2-2. Pre-defined Point Type Mnemonics
Mnemonic Description
@AGA American Gas Association Flow Calculation
@CLK Real-time Clock
@COM Communication Ports
@FLG ROC Flags
@FLW Meter Flow (FloBoss 103 and FloBoss 500-Series)
@FST Function Sequence Table Registers
@IO Physical I/O
@MVS Multi-variable Sensor (FloBoss 407 only)
@PID Proportional/Integral/Derivative Control
@PWR Power Control Tag (FloBoss 103 and FloBoss 500-Series)
@RUN Meter Run
@SFP Softpoints
@SMP Meter Calibration and Sampler (FloBoss 103 and FloBoss 500-Series)
@SYS System Parameters
@TNK Tank Management (ROC300-Series with ROCPAC only)
@XRN Extra Meter Run
The cursor keys provide movement within the list and <Esc> removes the list from the Workspace. In
the pop-up (Figure 2-7), double-click on an item to choose it and place it in the active cell in the
Workspace. In the menu listing (Figure 2-8), double-click on an item to choose it and place it in the
active cell in the Workspace or drag and drop the item onto the active cell. Click the X to close the
listing.
In Figure 2-9, when the value RR from the first command equals or exceeds (>=) the high alarm value
(HIAL condition is met), the FST branches to the PUMPON function to turn the pump on.
NOTE: Refer to Section 7, FST Examples, for additional examples.
IP – Instruction Pointer. Indicates the location in ROC or FloBoss memory of the next function to be
executed. One storage location is used for each byte that stores the function.
Size – The number of bytes reserved and used for the FST program in bytes. Equivalent to the end
pointer value minus the start pointer value.
Brk – Indicates the size of the next function to be executed. The delay, in 100-millisecond intervals,
between the execution of successive FST commands or functions.
Workspace
Output
(Compiled FST)
The FST Editor provides a Workspace, menus, and buttons for creating a Function Sequence Table.
The Title Bar at the top of the Workspace window identifies the FST being created or edited. In
Figure 3-1, the Title Bar shows “Function Sequence Table 1 – Workspace.”
The Workspace area is a table, divided into rows and columns with the intersection called a Cell. You
can use <Tab> and the arrow keys to move between cells, or you can go directly to a cell by clicking
it with the mouse. Cells are denoted by a box containing the cursor and a thick gray line around the
cell.
The Header Line of the Workspace contains the function structure column names. The STEP column
contains the numbers that correspond to the number of rows or Steps available in the Workspace.
The LABEL, CMD, ARGUMENT1, and ARGUMENT2 columns correspond to the structure of the
functions.
Key Action
→ Move cursor to the right cell or character.
← Move cursor to the left cell or character.
↑ Move cursor to the cell above it.
↓ Move cursor to the cell below it.
Backspace Delete the previous character.
Ctrl + Home Display beginning of Workspace.
Ctrl + End Display last entry in Workspace.
Delete Delete character in front of the cursor position.
End Move cursor to the right-most position within the cell.
Enter Process saves contents of cell entry and moves to the next cell.
Esc Undo entry and display original or prior contents of the cell.
F1 Help.
Home Move cursor to the left-most position within the cell.
Page Down Display next page of Workspace.
Page Up Display previous page of Workspace.
Tab Move to the next cell.
♦ When you select the field for the Command, the select button appears. If you click the
button, a display of commands from which to choose appears. You may type in the 3-
character command.
♦ Depending upon which Command was chosen, the Argument fields prompt you to type in
a Label, choose a TLP, or enter some other data.
5. Enter the END command at the end of your FST.
♦ When you select the field for the Command, the select button appears. If you click the
button, a display of commands from which to choose appears. You may also type in the 3-
character command.
♦ Depending upon which Command was chosen, the Argument fields prompt you to type in
a Label, choose a TLP, or enter some other data.
5. Verify the END command is at the end of your FST.
Select Edit > Delete Step to delete the current line from the Workspace.
Select Edit > Erase Workspace to erase the contents of the current Workspace permanently.
You can save the FST to a file before you erase the Workspace.
Even though the Cut, Copy, and Paste buttons are not available, you can use <Ctrl + X>, <Ctrl + C>,
and <Ctrl + V> to perform these functions when copying entire steps or blocks of steps.
The FST program provides the STEP numbers for each FST. You complete the other fields in the
structure to build a function.
NOTE: Do not skip any Steps. The FST program treats a blank STEP as the END of a
program and will not compile correctly.
In the example above, the program is instructed to GO to the LABEL PMPOFF as established by
ARGUMENT 1 in STEP 0. STEP 0 jumps to STEP 2, where the LABEL PMPOFF is located.
LABELs not referenced by an Argument are discarded when the FST is downloaded to the device. Use
LABELs only to enhance readability. LABELs remain with the FST when it is saved to a disk file.
In the example above, when the value RR from Step 1 equals or exceeds (>=) the High Alarm value
(VAL) in Step 2 and the High Alarm limit (HIAL) condition is met, the FST branches to the
PUMPON function to turn the pump on.
NOTE: Refer to Section 7, FST Examples, for additional examples.
Convention Description
RR (in) The value or contents of the Results Register (RR), Signal Value Analog (SVA) prior to
execution of the function (command).
RR (out) Output value from Results Register (RR).
CF (in) The value or contents of the Compare Flag (CF), Signal Value Discrete (SVD), prior to
execution of a function (command).
CF (out) The contents of the Compare Flag (CF), following execution of the function (command).
Each command name is given along with a brief description (action), the Arguments (ARGUMENT1
or ARGUMENT2) required, and the effect each operation has on the RR and CF. In the explanation
of the operation, if RR or CF is not mentioned, then the current content is not affected and remains
unchanged. In general, the CF is affected only by logical commands.
Table 4-2 provides a summary of the available FST commands and the software that supports that
Command.
Table 4-2. FST Command Summary
The following table summarizes the bit-wise AND The following example ANDs the two integers 37
operation. and 42, giving a result of 32.
AND | 0 1 37 00100101
–|–––– AND 42 00101010
0| 0 0 ––––––––––––––––––
1| 0 1 32 00100000
The following table summarizes the bit-wise Inclusive The following example ORs the two integers 37
OR operation. and 42, giving a result of 47.
OR | 0 1 37 00100101
–|–––– OR 42 00101010
0| 0 1 ––––––––––––––––––
1| 1 1 47 00101111
The following table summarizes the bit-wise Exclusive The following example Exclusive ORs the two
OR operation. integers 37 and 42, giving a result of 15.
XOR | 0 1 37 00100101
–|–––– XOR 42 00101010
0| 0 1 –––––––––––––––––
1| 1 0 15 00001111
NOTE: To trigger outputs, use the corresponding output command (previous table). These
commands trigger the mechanism that changes the output value.
NOTE: The FloBoss 407 and ROC300-series units must use the AO, DO, and TDO commands
to drive outputs from an FST. SAV and other commands will not affect the Output.
The Analog Output (AO) command sends the analog value specified in ARGUMENT2 to the analog
Point Number specified in ARGUMENT1. The analog value is not sent if the analog Point Number is
in Manual Mode. The check for Manual Mode is included as a safety feature and permits the FST to
continue operation if the device connected to the Analog Output is being serviced.
If a PID loop is controlling the Analog Output, placing the PID loop into Manual Mode allows the
FST to send a value to the output parameter of the PID.
Sending the value to the EU parameter of an Analog Output changes the parameter’s contents, but
does not initiate a new raw output.
xxxxxxxxxxxxxxxxxx
xxxxxxxx Arg2 val
yyyyyyyy zzzzz.zz
SCAN NEXT PREV MENU
xxxx ...message
yyyy ...FST Tag name
zzzz ...ARGUMENT2 value
MS2 Message written to the MSG2 field 1. Message FST Message String(ARG1)
during Trace Mode. 2. Database or Constant Value FST Message Value(ARG2)
RR(out) = RR(in)
SVD(out) = SVD(in)
ALM Log Alarm – record message 1. Message Log Alarm(ARG1, ARG2)
(ARGUMENT1) and value 2. Database or Constant Value RR(out) = RR(in)
(ARGUMENT2) in the alarm log. Only SVD(out) = SVD(in)
the first 10 characters of the 30-
character message are used.
EVT Log Event – record message 1. Message Log Event(ARG1,ARG2)
(ARGUMENT1) and value 2. Database or Constant Value RR(out) = RR(in)
(ARGUMENT2) in the event log. Only SVD(out) = SVD(in)
the first 10 characters of the 30
character message are used.
NOTE: The ALM and EVT functions can quickly overfill the allotted log space of alarms and events.
It is important to assure that these two functions do not operate continuously.
NOTE: No operation occurs with the LOG, LN, power (**), and SQR commands if the
Results Register is less than or equal to zero.
1. STEP 0 – VAL loads the Results Register (RR) with the value of the CONTRL parameter
from PID Point Number with the Tag named FLOWCNTL.
1. STEP 0 – VAL reads the contents of Register R1 and loads the value into the Results Register.
2. STEP 1 – Compare (==) the value in the Results Register to the value 10. If the Results
Register is equal to 10, then branch to the LABEL indicated in ARGUMENT2. In this case,
the LABEL is TRUE and the branch would go to STEP 4 and continue execution. If the
Results Register is not equal to 10, then continue execution with STEP 2.
3. STEP 2 – If the comparison in STEP 1 is FALSE, VAL loads the Results Register with the
value 0 (FALSE) to be saved STEP 5.
4. STEP 3 – GO to the STEP with the LABEL SAVE (STEP 5). This STEP branches around
STEP 4, which is executed only for TRUE comparisons.
1. STEP 0 – VAL loads the Results Register with the value 100.
2. STEP 1 – GO jumps to the STEP with the LABEL “OUTPUT.”
3. STEP 2 – VAL loads the Results Register with the value 0.
4. STEP 3 – GO jumps to the STEP with the LABEL “OUTPUT.”
1. STEP 0 – VAL loads the Results Register with the value 2 (percent or seconds output).
2. STEP 1 – SAV stores the value in the Results Register to the EU parameter for the desired
Discrete Output Point Number.
3. STEP 2 – TDO pulses the Discrete Output Point Number 2 percent or 2 seconds.
4. STEP 3 – Execution of the FST has completed (END). After a 100-millisecond delay,
execution resumes with STEP 0.
This example demonstrates the use of the save (SAV) command. The SAV command writes the
Results Register (RR) value to any database parameter available to the FST.
The following example shows the RR and R1 values before execution of the WDB command and after
the execution.
Before execution: RR = 50.00, R1= 25
After execution: History database point 1 (base RAM) location 25 is set to 50.00; R1 = 26.
NOTE: The RDB, WDB, and WTM commands are operational only when the History Point
number is 1 to 90 (device dependant), when the History Point archival type is defined as either
FST Time (Min), FST Data, or FST Time (Sec) and when the RAM for the History Point is
present.
1. STEP 0 – VAL reads the value of R1 and loads the value into the Results Register.
2. STEP 1 – If the Results Register is equal to (==) 10, branch to STEP 5 (EQUAL LABEL);
otherwise, continue with STEP 2.
3. STEP 2 – If the Results Register is less than (<) 10, branch to STEP 7 (LESS LABEL);
otherwise, continue with STEP 3.
4. STEP 3 – If the Results Register is greater than (>) 10, send the message (MSG) in
ARGUMENT1 and the value (R1) in ARGUMENT2 to the local display panel.
5. STEP 4 – GO jumps to STEP 8 to bypass printing the other messages.
6. STEP 5 – If the Results Register is equal to 10, send the message (MSG) in ARGUMENT1
and the value in ARGUMENT2 to the local display panel.
7. STEP 7 – If the Results Register is less than 10, send the message (MSG) in ARGUMENT1
and the value in ARGUMENT2 to the local display panel.
8. STEP 8 – Execution of the FST has completed (END). After a 100-millisecond delay,
execution restarts with STEP 0.
1. STEP 0 – VAL loads the value for A into the Results Register.
2. STEP 1 – SAV stores the value from Step 0 into R1 for use in the calculation.
3. STEP 2 – VAL loads the value for B into the Results Register.
4. STEP 3 – SAV stores the value from Step 2 into R2 for use in the calculation.
5. STEP 4 – VAL loads the value for C into the Results Register.
6. STEP 5 – SAV stores the value from Step 4 into R3 for use in the calculation.
7. STEP 6 – VAL loads the value for D into the Results Register.
8. STEP 7 – SAV stores the value from Step 6 into R4 for use in the calculation.
9. STEP 9 – Calculate the 3rd-order polynomial (P3).
10. STEP 10 – SAV stores the result to Softpoint 1 Data 6.
11. STEP 11 – Execution of the FST has completed (END).
1. STEP 0 – VAL loads the Results Register (SVA) with the value of the PID Mode parameter
from PID Point Number 1.
2. STEP 1 – SAV copies the PID Mode parameter value (now contained in the Results Register)
into the Compare Flag parameter of FST #1. The Results Register and Compare Flag (CF)
contents are now the same. Because there is no single command to load a value into the
Compare Flag directly, the two commands VAL and SAV are used (STEP 0 and STEP 1).
Likewise, it takes both commands to save a value from the Compare Flag (STEP 3 and
STEP 4).
3. STEP 2 – OR takes the logical “OR” between the Compare Flag and the value of the integer
“1” (binary 0001). The result is written into the Compare Flag, overwriting the contents
(previous PID Mode value). Thus, the OR operation effectively sets the right-most bit (Bit 0)
to a logical “1”, leaving the other bits unaffected. Because the Disabled/Remote SP Mode is
controlled by Bit 0 of the PID Mode Parameter, only this bit is set to “1”, which is interpreted
as the Remote SP Mode.
4. STEP 3 – VAL loads the contents of the Compare Flag back into the Results Register.
5. STEP 4 – SAV copies the Results Register into the PID Mode parameter with the
Disabled/Remote SP Mode now set to Auto.
6. STEP 5 – Execution of the FST is complete (END). After a 100-millisecond delay, execution
resumes.
1. STEP 0 – VAL reads the contents of Register R1 and loads the value into the Results Register.
1. STEP 0 – VAL loads the Results Register with the value 100.
2. STEP 1 – GO jumps to the STEP with the LABEL “OUTPUT.”
3. STEP 2 – VAL loads the Results Register with the value 0.
4. STEP 3 – GO jumps to the STEP with the LABEL “OUTPUT.”
5. STEP 4 – AO operates the control (or equivalent device) to value dictated by ARGUMENT2
(in this example, the value of the Results Register).
6. STEP 5 – Execution of the FST has completed (END). After a 100-millisecond delay,
execution resumes with STEP 0.
NOTE: The FloBoss 407 and ROC300-series units must use the AO, DO, and TDO commands to
drive outputs from an FST. SAV and other commands will not affect the Output.
1. STEP 0 – VAL loads the Results Register with the value 2 (percent or seconds output),
depending upon the configuration.
2. STEP 1 – SAV stores the value in the Results Register to the EU parameter for the desired
Discrete Output Point Number 1.
3. STEP 2 – TDO pulses the Discrete Output Point Number 2 percent or 2 seconds.
4. STEP 3 – Execution of the FST has completed (END). After a 100-millisecond delay,
execution resumes with STEP 0.
NOTE: The FloBoss 407 and ROC300-series units must use the AO, DO and TDO commands to
drive outputs from an FST. SAV and other commands will not affect the Output.
The following example shows the RR and R1 values before execution of the WDB command and after
the execution.
Before execution: RR = 50.00, R1= 25 (floating point value)
1. STEP 0 – VAL reads the value of R1 and loads the value into the Results Register.
2. STEP 1 – If the Results Register is equal to (==) 10, branch to STEP 5 (EQUAL LABEL);
otherwise, continue with STEP 2.
3. STEP 2 – If the Results Register is less than (<) 10, branch to STEP 7 (LESS LABEL);
otherwise, continue with STEP 3.
4. STEP 3 – If the Results Register is greater than (>) 10, send the message (MSG) in
ARGUMENT1 and the value (R1) in ARGUMENT2 to the local display panel.
5. STEP 4 – GO jumps to STEP 8 to bypass printing the other messages.
6. STEP 5 – If the Results Register is equal to 10, send the message (MSG) in ARGUMENT1
and the value in ARGUMENT2 to the local display panel.
7. STEP 7 – If the Results Register is less than 10, send the message (MSG) in ARGUMENT1
and the value in ARGUMENT2 to the local display panel.
8. STEP 8 – Execution of the FST has completed (END). After a 100-millisecond delay,
execution restarts with STEP 0.
1. STEP 0 – The ST command sets the timer in ARGUMENT1 to the number of 100-millisecond
intervals indicated in ARGUMENT2.
2. STEP 1 to 3 – Any function sequence.
3. STEP 4 – VAL reads the Timer to establish the reference time for the beginning of the
sequence.
4. STEP 5 – SAV stores the value of the Timer to Register R6.
5. STEP 6 to 8 – The sequence of FST commands for which the rate of execution is being
determined.
6. STEP 9 – The sequence of commands has completed executing. VAL reads the Timer to
determine the time of execution.
7. STEP 10 – SAV stores the value of the timer to Register R7. Take the difference between the
two Register values R7 and R6 and multiply by 0.1 to arrive at an execution rate in seconds
(rounded to the nearest 100-milliseconds).
Another way of determining the execution rate is to utilize the alarm functionality of the ROC or
FloBoss. For example, determining the execution rate of an instantaneous flow calculation of a meter
run can be accomplished by enabling alarms for the meter run and changing the inputs forcing the
flow rate into and out of alarm conditions. The Alarm Log can then be examined to determine
execution rate of the instantaneous flow calculation to the nearest second.
1. STEPS 0:1 – On power-up, the FST sets the last minute (R7) to the current minute past
midnight. This is to avoid unwanted accumulation during the first pass through the FST
immediately after power-up. The first pass determines that minute rollover has occurred,
calculates a minute average, and adds the minute average to the current day accumulation
(R2). An extra delay (WT) may also provide enough time for the current rate (R1) to stabilize.
FCV1
TANK 2
HIAL
ROC ROC
R1 A5
B9
LOAL
LT1
TANK 1 PUMP 1
When Pump1 is started, FCV1 diverts the inlet flow to Tank2. When Pump1 is stopped, FCV1 diverts
the inlet flow back to Tank1. Thus, a pre-metered amount of fluid is delivered downstream of Pump1
on a cyclical basis. HIAL is used to start Pump1, and LOAL is used to stop Pump1. The amount
delivered during each pump-down cycle is easily adjusted by changing HIAL and/or LOAL according
to the expression:
Volume (bbls) = (HIAL:LOAL)*(STRAP)*(S.G.) where:
HIAL-LOAL = Change in fluid level due to pump-down.
STRAP = Tank strapping value in bbls/in.
S.G. = Specific gravity of fluid compared to H2O.
Register R5 is used as the counter. Registers R1, R2, and R5 are initialized to “0” when the FST is
loaded into the device. This can be confirmed before setting the Run Flag to start the FST. R1 is the
pointer for History Point 9, and R2 is the pointer for History Point 10.
1. STEP 0 to 2 – VAL increments the counter (R5) by 1 and the new value is stored to the
Results Register.
1. STEP 0 – The ST command sets the timer in ARGUMENT1 to the number of 100-millisecond
intervals indicated in ARGUMENT2.
2. STEP 1 to 19 – Any function sequences.
3. STEP 20 – VAL reads the Timer to establish the reference time for the beginning of the
sequence.
4. STEP 21 – SAV stores the value of the Timer to Register R6.
5. STEP 22 to 39 – The sequence of FST commands for which the rate of execution is being
determined.
6. STEP 40 – The sequence of commands has completed executing. VAL reads the Timer to
determine the time of execution.
7. STEP 41 – SAV stores the value of the timer to Register R7. Take the difference between the
two Register values R7 and R6 and multiply by 0.1 to arrive at an execution rate in seconds
(rounded to the nearest 100-milliseconds).
Another way of determining the execution rate is to utilize the alarm functionality of the ROC or
FloBoss. For example: Determining the execution rate of an instantaneous flow calculation of a meter
run can be accomplished by enabling alarms for the meter run and changing the inputs forcing the
flow rate into and out of alarm conditions. The Alarm Log can then be examined to determine
execution rate of the instantaneous flow calculation to the nearest second.
INDEX
Symbols
–......................................................................... 5-1, 5-10 Analog Output
!= ................................................................................ 4-7 Parameters ............................................................. 6-2
*......................................................................... 5-1, 5-10 AO ..............................................................4-9, 5-6, 5-16
**....................................................................... 5-1, 5-10 AOU
/.......................................................................... 5-1, 5-10 Analog Output Parameters..................................... 6-2
+......................................................................... 5-1, 5-10 Argument Library....................................................... 6-1
<.................................................................................. 4-7 ARGUMENT1 ........................................................... 2-2
<= ............................................................................... 4-7 ARGUMENT2 ........................................................... 2-2
== ............................................................................... 4-7 Arguments .................................................................. 3-7
>.................................................................................. 4-7 Arrow Keys ....................................................... 2-2, 2-13
>= ............................................................................... 4-7 ASCII .................................................................. 2-4, 3-3
@ FST ........................................................................ 2-9 ATMPRS - Atmospheric Pressure.............................. 6-3
@AGA........................................................................ 2-9 ATPCAL - A.Temp When Calib................................ 6-8
@CLK ........................................................................ 2-9 AUX1 - Aux Out #1 On ............................................. 6-6
@COM ....................................................................... 2-9 AUX2 - Aux Out #2 On ............................................. 6-6
@FLG......................................................................... 2-9 AVG AP - Average Ap............................................... 6-7
@FLW........................................................................ 2-9 AVG DP - Average Dp............................................... 6-7
@FST ......................................................................... 2-9 AVG TP - Average Tp ............................................... 6-7
@IO ............................................................................ 2-9 AZONE - Active Zone ............................................... 6-7
@MVS........................................................................ 2-9
@PID.......................................................................... 2-9 B
@PWR........................................................................ 2-9 Backspace................................................................... 2-2
@RUN........................................................................ 2-9 BASDEN - Base Density..................................... 6-3, 6-7
@SFP ......................................................................... 2-9 BASEPR - Base Pressure ........................................... 6-3
@SMP ........................................................................ 2-9 BASETP - Base Temperature..................................... 6-3
@SYS......................................................................... 2-9 Basic Rules ................................................................. 1-5
@TNK ........................................................................ 2-9 BAUD - Baud Rate..................................................... 6-5
@XRN........................................................................ 2-9 BETA - Diameter Ratio.............................................. 6-7
BORDIA - Orif. Bore Dia. ......................................... 6-7
A BREAK - Execution Delay ........................................ 6-5
ABS .......................................................................... 5-11 BRK.......................................................................... 4-14
Absolute Value ...................................................... 5-2 Break............................................................. 2-15, 3-9
Absolute Value .................................................. 5-2, 5-11 Build .................................................................... 2-4, 3-4
ACCUM - Accumulated Value ........................... 6-1, 6-2
Add ........................................................................... 5-10 C
AGA - American Gas Association C' | IMV - C' (85) or IMV(92) .................................... 6-7
Parameters ............................................................. 6-3 CALCAL - Freshness of C' ........................................ 6-3
AIN Calculate Approximate Execution Rate............... 7-3, 7-9
Analog Input Parameters ....................................... 6-2 CALCZ - Initiate Recalculation of Zs ........................ 6-3
ALARM - Alarm Code......................... 6-1, 6-2, 6-3, 6-4 CALWGT - Cal Wght Grav Accl............................... 6-8
Alarms ........................................................................ 7-6 CARBDI - CO2 Carbon Dioxide................................ 6-3
ALDBND - Alarm Deadband.............................. 6-1, 6-2 CARBMO - CO Carbon Monoxide............................ 6-3
ALM ......................................................................... 4-14 CF
ALMPTR - Alarm Pointer.......................................... 6-5 Compare Flag ........................................2-15, 3-9, 4-1
Alt + 1 ........................................................................ 2-2 CF Bny
Alt + Ctrl + C ............................................................. 2-2 Compare Flag Binary.................................... 2-15, 3-9
Alt + Ctrl + P.............................................................. 2-2 Clear ........................................................................... 3-5
Alt + Ctrl + T.............................................................. 2-2 CLK – Real-time Clock Parameters ........................... 6-6
AMBTMP - Ambient Air Temp................................. 6-8 Close........................................................................... 3-6
Analog Input CLREEP - Clear EEPROM ........................................ 6-6
Parameters ............................................................. 6-2
P, Q R
P_DBND - PRI Deadband.......................................... 6-3 R1 through R10 ................................................... 3-9, 7-4
P_DRVT - PRI Derivative Gain................................. 6-3 R1 through R10 - Register # 1 through Register 10 ... 6-5
P_IPUT - PRI Process Variable................................. 6-3 RATE - Current Rate.................................................. 6-2
P_ITGL - PRI Integral Gain ....................................... 6-3 RATEAL - Rate Alarm EU ..........................6-1, 6-2, 6-4
P_LOOP - PRI Loop Period ....................................... 6-3 RATELF - Rate Flag .................................................. 6-2
P_OPUT - PRI Output EU ......................................... 6-3 RATEPR - Rate Period............................................... 6-2
P_PROP - PRI Proportional Gain............................... 6-3 RCNTR - Retry Counter............................................. 6-5
P_SCLE - PRI Scale Factor........................................ 6-3 RCOUNT - Retry Count............................................. 6-5
P_SP - Primary Setpoint............................................. 6-3 RDB.......................................................................... 4-10
P_SPCH - PRI SP EU/Min......................................... 6-3 Read..................................................................... 3-3, 3-5
P_SWMD - PRI Switch Mode.................................... 6-3 Read FST.................................................................... 2-3
P_SWSP - PRI Sw Setpoint ....................................... 6-3 Real-Time Clock
P3................................................................................ 5-1 Parameters ............................................................. 6-6
3rd Order Polynomial ............................................ 5-3 Registers ............................................................ 1-3, 2-14
Page Down ........................................................ 2-2, 2-13 Registers R1 to R10........................................... 1-3, 2-14
Page Up ............................................................. 2-2, 2-13 Re-starts...................................................................... 1-5
Parameters ......................................................... 2-11, 6-1 Results Register (RR) .......................................... 1-2, 1-4
If you have comments or questions regarding this manual, please direct them to your local sales representative
or contact: