User`s manual

Programmed Motion
GFK-1742A Chapter 7 Programmed Motion 7-3
7
Type 1 commands
can redirect the program path execution, but do not directly affect positioning.
Call (Subroutine) executes a subroutine before returning execution to the next command.
Jumps may be conditional or unconditional. An unconditional jump always redirects
execution to a specified program location. A conditional jump is assigned a CTL bit to
check. If the CTL bit is ON, the jump redirects execution to a specified program location.
If the CTL bit is OFF, the jump is ignored.
Type 2 commands
also do not affect position.
Block numbers provide an identification or label for the Type 3 command that follows.
Block numbers are required with JUMP commands; otherwise, they are optional. If a
program block does not contain a block number, the previous block number, if any, remains
in effect.
The SYNC (synchronize block) command is a two-axis synchronization command (this may
or may not delay motion on one axis).
The Load Parameter command allows the user to load a value into a parameter register.
The Velocity (VELOC) and Acceleration (ACCEL) commands specify velocity and
acceleration rates for the Type 3 MOVE command or commands that follow. Velocity and
Acceleration commands remain in effect until changed.
Type 3 commands
start or stop motion and thus affect positioning control.
Positioning (PMOVE) and Continuous (CMOVE) moves command motion.
The Dwell, Wait, and End of Program commands stop motion.
Program Blocks and Motion Command Processing
A program block consists of and is defined as one (and only one) Type 3 command with any
number and combination of preceding Type 1 and 2 commands.
A block number has two primary uses: (1) it provides a Jump-To identification (label), and (2) it
identifies the section of the program that is currently executing via the
Block Number
%AI Status
words for each axis. Type 2 commands are optional; a program block can contain a single Type 3
command. Type 2 commands and Conditional Jumps do not take effect until the DSM executes
the next Type 3 command.
While the DSM314 is executing a program block, the following program block is processed into a
buffer command area. This buffering feature minimizes block transition time. Thus, parameters
used in a move must be loaded before the move command that was programmed two blocks earlier
completes execution. In other words, in order to minimize the block-to-block transition time, a
new block is pre-processed during previous block execution. Program block parameters must be
loaded before the preceding block begins execution.
When a DSM314 is executing a multi-axis program, the program commands are scanned independently
by each axis and only the data designated for that axis is executed. Note that some multi-axis program
commands do not specify an axis (Block number, Jump, Call, and End) and therefore apply to both
axes.