Skip to main content

FST Programming on the Emerson ROC800 — Function Sequence Tables

By NFM Consulting 1 min read

Key Takeaway

How to write FST (Function Sequence Table) programs on the ROC800 — step-based programming, opcodes, conditional logic, and practical automation examples.

Quick Answer

FST (Function Sequence Table) is the ROC800's native programming language — a step-based sequence of instructions using numbered opcodes for math, logic, comparison, and I/O operations. FST programs execute sequentially through numbered steps, with conditional branching via GOTO and IF opcodes. FST is unique to the ROC platform and differs fundamentally from IEC 61131-3 languages used in Allen-Bradley PLCs and SCADAPack.

What Is an FST Program?

An FST is a table of numbered steps. Each step contains an opcode (operation code) and operands. Steps execute in sequence. Conditional opcodes (IF, GOTO) branch execution to different steps based on conditions.

How Do You Create an FST Program?

  1. Navigate to FST in ROCLINK 800 device tree
  2. Select an available FST slot
  3. Open the FST editor
  4. Enter steps with opcodes and operands
  5. Compile and check for errors
  6. Write FST to the ROC device
  7. Enable the FST for execution

Common FST Opcodes

  • ADD, SUB, MUL, DIV — Arithmetic
  • AND, OR, NOT — Boolean logic
  • IF, GOTO — Conditional branching
  • MOVE — Copy value between registers
  • TIMER — Time delay
  • COMPARE — Value comparison (EQ, NE, GT, LT)

Example: High-Level Alarm with Shutdown

Step 1: IF AI.1 > 450.0 GOTO 3
Step 2: GOTO 5
Step 3: DO.1 = 1   (activate shutdown relay)
Step 4: ALARM.1 = 1 (set alarm flag)
Step 5: END

FST vs IEC 61131-3

FST is unique to ROC and uses a step/opcode model rather than graphical ladder or structured text. Engineers familiar with ladder logic will find FST conceptually different but functionally capable for most field automation tasks.

Frequently Asked Questions

Ready to Get Started?

Our engineers are ready to help with your automation project.