Drive Enable Differences: 9000 vs Bus-Based

Drive On X does not work with the Non-ACR 9000 Controllers

The DRIVE ON command only works with the ACR9000. All other ACR Controllers must manually set the Enable output(s). The DRIVE ON function of the 9000 also serves a few other important functions such as: 

  • Issuing a REN command to sync the axes, 

  • Resetting the commanded position for axis X with the actual encoder position 

  • Verifying motion is not already being commanded, 

  • Checking for relevant drive and encoder faults 

  • Checking that there is not an excess position error. 

The is done by checking bits 516, 528, 529, 789, 790, 791, 792, 2560 and, 2561. Once the drive is enabled, the 9000 will then monitor the drive fault input (Bit 64 for Axis 0).

A command issued to the 9000 to enable drives 0, aliased as X, 

P00>DRIVE ON X

Would be 

The equivalent of issuing the following on all other ACR Controllers:

PROGRAM
IF (NOT BIT516 AND NOT BIT792 AND NOT BIT789 AND NOT BIT790 AND NOT BIT791)
REM If not in Motion (interpolated, jogging, gearing, camming and ballscrew compensation)
IF (BIT2560) : REM check for encoder fault
CLR 2560 : REM clear encoder fault
DWL 0.1 : REM dwell for 1/10 of a second
IF (BIT 2560) : REM check encoder flag again for fault
PRINT "Encoder faulted, check drive power and encoder wiring"
END : REM if still faulted, end program
ENDIF
ELSE
REN X : REM zero out following error
DWL .050 : REM "REN" command takes 50ms to complete
SET 32 : REM turn on output that controls drive's "enable" input
ENDIF
ELSE
Print " Not Valid While in Motion"
END : REM end program
ENDIF
ENDP

To enable the drives.
Once an axis is in motion, the Drive I/O then monitors following error, the drive fault input, kill all motion bits, and encoder feedback.Â