Input/Output 06/2005
Danaher
Motion
150 Rev
E
M-SS-005-03l
10.2.2. Long-Word-Oriented Software I/O
The entire word (32 bits) of software input and output is accessed when a bit
position is not included in the reference to the input or output variable. So the
following statement is valid:
System.VOut=System.VIn
This statement copies the virtual software input to the output. The physical
input and output variables are used in this manner. Be careful when
assigning virtual I/O to physical I/O because there are fewer physical bits
than there are virtual bits. There are only 20 bits of physical output, but the
virtual output variable can have 32 bits.
10. 3
PLS (P
ROGRAMMABLE
L
IMIT
S
WITCH
)
A Programmable Limit Switch (PLS) monitors position feedback on any axis,
real or simulated. A PLS offers more flexibility than a limit switch, as it allows
many trip points and can be reconfigured on-the-fly. A PLS toggles the state
of a specified system output when an axis position reaches any of the
defined positions of the PLS. Some of the features of a PLS are:
Multiple position specifications.
Multiple PLSs per axis
PLS pattern repetition
Position hysteresis
Enabling and disabling of PLSs
The system output may be digital or soft (fast data)
PLS positions are defined in an array that allows you to change individual
values of PLS positions. This array must be increasing monotonic. There is
no limit of the number of positions or PLSs that can be defined.
The initial output polarity is specified with
PLSPOLARITY
. The output state
is set when the PLS is enabled.
10.3.1. Enable and Disable
After being defined, a PLS is disabled (output pattern is not generated). The
output is set when the PLS is enabled. The output is set to the defined initial
state.
PLS properties are changed only when the PLS is disabled. Each enabled
PLS requires CPU resources. Conserve those resources by disabling the
unused PLS(s).
PLSENABLE
controls the status of the PLS:
MyPLS.PlsEnable = ON | OFF
PLSENABLE
queries the status of a PLS:
?MyPls.PlsEnable
if(MyPLS.PlsEnable = OFF)
. . .
or drives events:
EventOn MyEvent MyPLS.PlsOutput = ON