Galil DMC-1700 Home Security System User Manual


 
DMC-1700/1800 Chapter 6 Programming Motion • 123
#SETUP
OE1; Set the profiler to stop axis upon error
KS16; Set step smoothing
MT-2; Motor type set to stepper
YA64; Step resolution of the microstepping drive
YB200; Motor resolution (full steps per revolution)
YC4000; Encoder resolution (counts per revolution)
SHX; Enable axis
WT50; Allow slight settle time
YS1; Enable SPM mode
Example: Error Correction
The following code demonstrates what is necessary to set up SPM mode for the X axis, detect error,
stop the motor, correct the error, and return to the main code. The drive is a full step drive, with a 1.8
o
step motor and 4000 count/rev encoder.
#SETUP
OE1; Set the profiler to stop axis upon error
KS16; Set step smoothing
MT-2,-2,-2,-2; Motor type set to stepper
YA2; Step resolution of the drive
YB200; Motor resolution (full steps per revolution)
YC4000; Encoder resolution (counts per revolution)
SHX; Enable axis
WT100; Allow slight settle time
#MOTION
Perform motion
SP512; Set the speed
PR1000; Prepare mode of motion
BGX; Begin motion
#LOOP;JP#LOOP; Keep thread zero alive for #POSERR to run in
REM When error occurs, the axis will stop due to OE1. In REM #POSERR, query
the status YS and the error QS, correct, REM and return to the main code.
#POSERR;
Automatic subroutine is called when YS=2
WT100; Wait helps user see the correction
spsave=_SPX; Save current speed setting
JP#RETURN,_YSX<>2; Return to thread zero if invalid error
SP64; Set slow speed setting for correction