RTC
®
5 PC Interface Board
Rev. 1.9 e
9 Programming Peripheral Interfaces
211
matically generated when the delay has expired). This
can be useful, for instance, when processing multiple
workpieces transported to the scan system (even) at
irregular intervals: here, up to 8 workpieces can
simultaneously reside within the track delay (distance
between the light barrier and scan system). If more
external starts are triggered than can be simulta-
neously held in the 8-start wait loop, then an error bit
is set, which can be queried via get_startstop_info
(bit#11). If a track delay is set, then any previous
queue is canceled (see set_ext_start_delay and
simulate_ext_start).
Notes
• Note that the /START, /START2 and /Slave-START
inputs are edge sensitive (HIGH to LOW level
transition), whereas the /STOP, /STOP2 and /Slave-
STOP inputs are level sensitive.
• An explicit call of the command stop_execution
disables the /START, /START2 and /Slave-START
inputs. An external stop signal also (at least
temporarily) disables these inputs, i.e. as long as
one of the inputs /STOP, /STOP2 or /Slave-STOP is
LOW. The command set_control_mode can be
used to define whether or not the /START, /START2
and /Slave-START inputs also stay disabled when
the external stop signal is no longer active.
•The command set_control_mode additionally
allows activation or deactivation of the inputs
/START, /START2 or /Slave-START and deactivation
of track delay.
• External starts will also be suppressed after
pause_list, stop_list or set_wait (PAUSED status
is set). restart_list, stop_execution,
release_wait or an external list stop will end
suppression of the list start.
• If list inputs are not yet finished, a buffer flush
should be initiated before an external start, e.g.
via
set_input_pointer( get_input_pointer ())
,
so that possibly buffered list commands will be
fully transferred to list memory (see page 71).
• If a master board is started internally (e.g. via
execute_list_pos) and subsequently a slave
board via simulate_ext_start, then the master
and slave boards won’t run synchronously if a
home jump was previously activated via
home_position or home_position_xyz: the
home return executes on the master board before
simulate_ext_start starts the slave board, but
executes on the slave board afterward. While the
home return executes on the slave board, the
master board continues running. This asynchro-
nicity doesn’t occur if all boards are started via an
external start signal (or via simulate_ext_start or
simulate_ext_start_ctrl) or if no home jump is
activated.