L9_DRUM: DRUM Sequencer
(Original Document)
Naming
Name in LL984 Editor
Function Block Name
name of legacy 984 instruction
name in other tools and editors like:
  • Type Library Browser
  • Data Editor
  • Animation Tables
  • Search Results
Function Description
The L9_DRUM EFB operates on a table of %MW words containing data representing each step in a sequence.
The number of words associated with this step data table depends on the number of steps in the sequence.
You can pre-allocate words to store data for each step in the sequence, thereby allowing you to add future sequencer steps without having to modify application logic.
L9_DRUM incorporates an output mask that allows you to selectively mask bits in the word data before writing it to coils. This is particularly useful when all physical sequencer outputs are not contiguous on the output module.
Masked bits are not altered by L9_DRUM, and may be used by logic unrelated to the sequencer.
Representation
Parameters
Input Pin
Name
Data Type
Address Range
Meaning
Top
IN
ON = initiates L9_DRUM sequencer
Middle
INC
ON = step pointer increments to next step
Bottom
RESET
ON = resets step pointer to 0
Node
Node Type
Name
Data Type
Address Range
Meaning
Top
INOUT
STEP_LOC
UINT
%MW
step pointer
The %MW word entered in STEP stores the current step number. The value in this word is referenced by the function block each time it is solved. If INC is ON, the contents of the word in STEP are incremented to the next step in the sequence before the block is solved.
Middle
INOUT
DEST
ANY_ARRAY_UINT
%MW
step data table
first word in a table of step data information
For more information see below.
Bottom
IN
LENGTH
UINT
0...999
length
The integer value entered in LENGTH is the length, i.e., the number of application-specific words used in the step data table. The length can range from 0...999. The total number of words required in the step data table is the length + 6. The length must be greater or equal to the value placed in the steps used word in DEST.
Output Pin
Name
Data Type
Address Range
Meaning
Top
OUT
BOOL
ON = sequencer successful
(Echoes the status of the IN input).
Middle
LAST
BOOL
ON = step pointer value = length
Bottom
ERR
BOOL
ON = sequencer not successful
DEST Block
The first six words in the step data table hold constant and variable data required to solve the block:
Word
Name
Content
DEST[1]
masked output data
Loaded by L9_DRUM each time the block is solved. Contains the contents of the current step data word masked with the output mask word.
DEST[2]
current step data
Loaded by L9_DRUM each time the block is solved. Contains data from the step pointer. Causes the block logic to automatically calculate word offsets when accessing step data in the step data table.
DEST[3]
output mask
Loaded by user before using the block. L9_DRUM will not alter output mask contents during logic solve. Contains a mask to be applied to the data for each sequencer step.
DEST[4]
machine ID number
Identifies L9_DRUM/L9_ICMP blocks belonging to a specific machine configuration.
valid range: 1 .. 9 999
All drum blocks belonging to same machine configuration have the same machine ID number.
DEST[5]
profile ID number
Identifies profile data currently loaded to the sequencer.
valid range: 1 .. 9 999
All drum blocks with the same machine ID number must have the same profile ID number.
DEST[6]
steps used
Loaded by user before using the block, specifying the actual number of steps to be solved.
valid range: 1 .. LENGTH (bottom node parameter)
The remaining words contain data for each step in the sequence.