Galil DMC-2X00 Projector User Manual


 
66 Chapter 6 Programming Motion DMC-2X00
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
MG”ERROR= “,_QSX
YRX=_QSX; Else, error is valid, use QS for correction
MCX; Wait for motion to complete
MG”CORRECTED, ERROR NOW= “,_QSX
WT100; Wait helps user see the correction
#RETURN
SPX=spsave; Return the speed to previous setting
REO; Return from #POSERR
Example: Friction Correction
The following example illustrates how the SPM mode can be useful in correcting for X axis friction
after each move when conducting a reciprocating motion. The drive is a 1/64
th
microstepping drive
with a 1.8
o
step motor and 4000 count/rev encoder.
#SETUP;
Set the profiler to continue upon error
KS16; Set step smoothing
MT-2,-2,-2,-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
#MOTION;
Perform motion