omron — PMAC Position Registers

PMAC Product Guide 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. This is 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. M167 * M175 M169 M164 M162 M161 176 P − + + − = To read this register in counts: P176 = M175 / (I108*32) 32 * I108 Programming PMAC 67