User`s manual

4.0 - Programming PMAC
Page - 38
- M166 is the actual velocity register. For display purposes use the Motor filtered actual velocity, M174
To read this register in cts/msec: P166 = M166 * 8388608 / (I109 * 32 * I10 * (I160+1))
M167->D:$002D ; #1 Present master ((handwheel) pos (1/[Ix07*32] cts
; of master or (1/[Ix08*32] cts of slaved motor)
- M167 is related to the master/slave relationship set through Ix05 and Ix06. It contains the present number of counts the
master. To read this register in counts:
P167 = M167 / (I108*32)
or
P167 = M167 / (I107*32)
M169->D:$0046 ; #1 Compensation correction
- Calculated leadscrew compensation correction according to actual position (M162) and the leadscrew compensation table
set through the “define comp” command.
To read this register in counts: P169 = M169 / (I108*32)
M172->L:$082B ; #1 Variable jog position/distance (counts)
- Contains the distance for the J=* command
Example: M172=2000 J=* ;Jog to position 2000 encoder counts
M173->Y:$0815,0,24,S ; #1 Encoder home capture offset (counts)
- Contains the home offset from the reset/power-on position. Important for the capture/compare features.
Example:
If (M117=1)
P103=M103-M173 ; Captured position minus offset
endif
M174->Y:$082A,24 ; #1 filtered actual velocity (1/[Ix09*32] cts/servo cycle)
- These registers contain the actual velocities averaged over the previous 80 real-time interrupt periods
(80*[I8+1] servo cycles); good for display purposes.
To read this register in cts/msec: P174 = M174 * 8388608 / (I109 * 32 * I10 * (I160+1))
M175->D:$0840 ; #1 following error (1/[Ix08*32] cts)
- Following error is the difference between motor desired and measured position at any instant. When the motor is open-
loop (killed or enabled), following error does not exist and PMAC reports a value of 0.
32 * I108
M167*M175M169M164M162M161
176P
++
=
To read this register in counts: P176 = M175 / (I108*32)
4.7 - Homing Search Moves