Reference Manual
PMAC 2 Software Reference
PMAC Saved Setup Registers 375
Incremental Encoder Entries ($0, $8, $C): These three conversion table methods utilize the incremental
encoder registers in the Servo ICs. Each method provides a processed result with the units of (1/32) count
– the low 5 bits of the result are fractional data.
1/T Extension: With the $0 method, the fractional data is computed by dividing the Time Since Last
Count register by the Time Between Last 2 Counts register. This technique is known as 1/T extension,
and is the default and most commonly used method. It can be used with a digital incremental encoder
connected directly to the PMAC, either on PMAC(1) or PMAC2.
Parallel Extension: With the $8 method, the fractional data is computed by reading the five inputs at bits
19-2,3 either of the specified address (USERn, Wn, Vn, Un, and Tn flag inputs, respectively) in the case
of a PMAC2, or of the specified address plus 4 (CHC[n+1], HMFL[n+1], +LIM[n+1], -LIM[n+1],
FAULT[n+1]) in the case of a PMAC(1). This technique is known as parallel extension, and can be used
with an analog incremental encoder processed through an ACC-8D Opt 8 Analog Encoder Interpolator
board or its equivalent.
No Extension: In the $C method, the fractional data is always set to zero, which means there is no
extension of the incremental encoder count. This setting is used mainly to verify the effect of one of the
two extension methods. It is also recommended when feeding back the pulse-and-direction outputs for
stepper drives.
With any of these three conversion methods, the source address in the low 16 bits (bits 0 – 15) is that of
the starting register of the machine interface channel.
The first table below shows the entries for PMAC(1) encoder channels. The “m” in the first hex digit
(bits 20 – 23) represents the conversion method ($0, $8, or $C). The “x” in the second hex digit
represents a 0 (not summed) or 1 (summed with above entry).
Channel Entry Channel Entry Channel Entry Channel Entry
1 $mxC000 5 $mxC010 9 $mxC020 13 $mxC030
2 $mxC004 6 $mxC014 10 $mxC024 14 $mxC034
3 $mxC008 7 $mxC018 11 $mxC028 15 $mxC038
4 $mxC00C 8 $mxC01C 12 $mxC02C 16 $mxC03C
The next table below shows the entries for PMAC2 encoder channels. The “m” in the first hex digit (bits
20 – 23) represents the conversion method ($0, $8, or $C). The “x” in the second hex digit represents a 0
(not summed) or 1 (summed with above entry).
Channel Entry Channel Entry Channel Entry Channel Entry
1 $mxC000 5 $mxC020 9 $mxC040 13 $mxC060
2 $mxC008 6 $mxC028 10 $mxC048 14 $mxC068
3 $mxC010 7 $mxC030 11 $mxC050 15 $mxC070
4 $mxC018 8 $mxC038 12 $mxC058 16 $mxC078
ACC-28 Style A/D Entries ($1, $5): The “A/D” feedback entries read from the high 16 bits of the
specified address and shift the data right three bits so that the least significant bit of the processed result in
bit 5. Unlike the “parallel feedback” methods, this method will not “roll over” and extend the result.
The $1 method processes the information directly, essentially a copying with shift. The $5 integrates the
input value as it copies and shifts it. That is, it reads the input value, shifts it right three bits, adds the bias
term in the second line, and adds this value to the previous processed result.
If the bit 19 of the entry is ‘0’ (making the second hex digit $0), the 16-bit source value is treated as a
signed quantity; this should be used for the ACC-28A. If bit 19 of the entry is ‘1’ (making the second hex
digit $8), the 16-bit value is treated as an unsigned quantity; this should be used for the ACC-28B.