Setting the slew (halfstep) speed


Because computer capabilities vary greatly and because of widely varying motor and scope mounts, it will be necessary to spend time optimizing the values relating to halfstepping in the configuration file, config.dat. I use a 486/100 laptop. Included is config.386, which were the values I used on my old 386/20 with 387 math coprocessor.

To set the halfstep slewing, try to set HsTimerFlag to 1, enabling the interrupt drive timing. The interrupt driven timing is independent of cpu speed, so regardless of the computer's speed, set MaxDelay to 2000, MinDelay to 500, and HsRampX to 5. MinDelay and MaxDelay can be converted to Hertz by dividing them into 1,000,000. For instance, if MaxDelay is 1000, then Hertz is 1000 or step frequency is 1000 steps per second.

Be sure to run scope.exe after booting to DOS, or exiting Win95 to DOS. The motor's starting speed is set by MaxDelay, the fastest speed by MinDelay, and the time to ramp up and down set by HsRampX. Adjust to suit your combination of steppers, drive voltage, and scope's torque loading.

If the interrupt drive timing won't work and it is necessary to use the delay method of timing the halfsteps, set HsTimerFlag to 0. If you have a cpu close to a 386/20, start with MaxDelay 8000, MinDelay 3000, and HsDelayX 1. If you have a cpu close to a 486/100, change HsDelayX to 2. Speed starts at (MaxDelay-MinDelay)*HsDelayX, and achieves fastest speed at MinDelay*HsDelayX. HsDelayX is used as a multiplier to keep the MaxDelay and MinDelay values reasonable; otherwise the array size becomes too large. Again, adjust as necessary to fit the motors, the drive voltage, and the scope.